在erb电子邮件中添加链接到“添加到日历”ics文件
问题描述:
我在Rails中使用ActionMailer
创建了confirmation email
。我创建的电子邮件方法如下:在erb电子邮件中添加链接到“添加到日历”ics文件
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>
我不知道什么链接添加在这里?这种方式是错误的吗?基本上我不确定如何为电子邮件附件添加下载链接
答
当您在电子邮件中附加事件时,无法在调用附加事件的电子邮件内创建按钮。
当一个事件附加到电子邮件中时,大多数电子邮件客户端检测附加事件并提供一个“添加到日历”链接本身做得很好。
如果您还想在电子邮件中备份“添加到日历”链接,那么我会建议您使用AddEvent.com上的“直接URL方法” - https://www.addevent.com/api/direct-url-method。 (我支持AddEvent btw)。
我们大多数在电子邮件中附加活动的用户使用混合。他们使用他们的Mail API附加了一个事件,并在电子邮件中包含“添加到日历”链接。两者都可以使用“直接URL方法”来完成。
嘿谢谢你的回答。我实际上继续前进,改变了我的方法来跟随你的想法。当我创建了'ics'文件时,我只需将它推到S3,现在可以通过点击指向S3的图标来下载它。我正在标记你的答案是正确的,因为我的解决方案与你的答案类似;我只是创建它而不是使用addEvent – anonn023432
我的荣幸!这完全是关于方法 - 解决问题的好方法! –
嗨。 @ anonn023432,我有你提到的同样的问题。 您是否找到另一个添加“添加到日历”链接的解决方案,并且该事件会自动添加到您的日历(谷歌,outlook等),而不是从S3下载文件? 谢谢! – Zvi