Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为erb电子邮件中的ics文件添加“添加到日历”链接_Ruby On Rails_Email_Calendar_Attachment_Actionmailer - Fatal编程技术网

Ruby on rails 为erb电子邮件中的ics文件添加“添加到日历”链接

Ruby on rails 为erb电子邮件中的ics文件添加“添加到日历”链接,ruby-on-rails,email,calendar,attachment,actionmailer,Ruby On Rails,Email,Calendar,Attachment,Actionmailer,我使用Rails中的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}"

我使用Rails中的
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
这将正确地将
会话.ics
附件添加到电子邮件中,但现在我想包括一个
添加到日历
按钮,该按钮将在单击时下载附件

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

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


我不确定要在这里添加什么链接?这条路错了吗?基本上,我不知道如何为电子邮件附件添加下载链接当您在电子邮件中附加事件时,您无法在电子邮件中创建调用附加事件的按钮

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

如果您仍然希望在电子邮件中备份“添加到日历”链接,那么我建议您使用AddEvent.com中的“直接URL方法”之类的解决方案。(顺便说一句,我落后于AddEvent)

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


嘿,谢谢你的回答。事实上,我按照你的想法改变了我的方法。当我的
ics
文件被创建时,我只需将它推送到S3,人们现在可以通过点击指向S3的图标下载它。我将你的答案标记为正确,因为我的答案与你的答案相似;我只是创造了它,而不是使用我的快乐!这一切都是关于方法-伟大的方法解决它!嗨@ANNONN023432,我有你提到的同样的问题。您是否找到了另一个添加“添加到日历”链接的解决方案,该事件将自动添加到您的日历(google、outlook等),而不是从S3下载文件?谢谢@ANNONN023432,请问您是如何创建的?我想用同样的方法。