ruby-on-rails – 将动态生成的文件作为电子邮件发送

我目前正在允许用户选择某些参数,并根据这些参数,我生成一个csv文件并将其作为下载推送给用户.例如
send_data <generated csv data>,:disposition => 'attachment' :type => 'text/csv'

有时,由于数据变得太大而无法计算,我不希望让用户等待将文件作为下载推送.我想将此文件作为附件发送到电子邮件中.

我可以正常发送电子邮件.我可以将已存在的文件作为附件发送.我不想保存这个文件.我想直接通过电子邮件发送给用户.

我怎么做?

解决方法

@juanpastas – 我按照你建议的方式做到了.但是这导致文件显示为电子邮件正文中的文本.

这就是电子邮件中出现的内容.

Content-Type: text/csv;
charset=UTF-8;
filename=data.csv
Content-transfer-encoding: 7bit
Content-disposition: attachment;
filename=data.csv
Content-ID: xyzxyz
[content of the csv file as text]

然后我包含了消息正文并且它有效.

mail(to: user.email,subject: 'XYZ',body: 'XYZ')

这导致电子邮件具有我提供的正文和主题,而文件显示为附件.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...