在erb email中为ics文件添加“添加到日历”的链接

时间:2017-04-04 17:21:13

标签: ruby-on-rails email calendar attachment actionmailer

我在Rails中使用confirmation email创建了ActionMailer。我创建电子邮件的方法如下:

def session_confirmation_email_client(user, coach, date, session_ics, session_outlook, google_cal)
  @google_cal = google_cal
  @user = user
  @date = format_time(date.getlocal)
  @sender = "#{SENDER}"
  mail.attachments["session.ics"] = { mime_type: 'text/calendar', content: session_ics }
  mail(to: user.email, subject: 'Session Confirmation')
end

这会正确地将session.ics附件添加到电子邮件中,但现在我想要添加Add To Calendar按钮,该按钮会在点击时下载附件。

目前我的erb模板如下所示:

<td align="right" valign="top">
  <%= link_to image_tag("https://s3.amazonaws.com/ical.svg"), LINK_TO_ATTACHMENT %>
</td>

我不确定在这里添加什么链接?这样错了吗?基本上我不知道如何为电子邮件附件添加下载链接

1 个答案:

答案 0 :(得分:1)

在电子邮件中附加活动时,您无法在调用附加活动的电子邮件中创建按钮。

当事件附加到电子邮件时,大多数电子邮件客户端都能很好地检测附加事件并自行提供“添加到日历”链接。

如果您仍希望在电子邮件中添加“添加到日历”链接,那么我建议您使用AddEvent.com中的“直接网址方法” - https://www.addevent.com/api/direct-url-method等解决方案。 (我在AddEvent btw后面)。

我们在电子邮件中附加活动的大多数用户都使用混合。他们使用Mail API附加活动,并在电子邮件中包含“添加到日历”链接。两者都可以使用“直接URL方法”完成。

enter image description here