对于最近上传的未链接到任何模型的文件,我需要能够将文件附加到邮件(使用 Mailer)。
在上传表单的代码中:
<%= form_for(:mail, :url => {:action => 'send_mail'}, :html => {:multipart => true}) do |f| %>
<table summary="send_table">
<tr>
<th>Attachment</th>
<td><%= f.file_field(:attachment) %><a id="attachment"></a></td>
</tr>
</table>
<%= submit_tag "Send!" %>
现在,我在 send_mail 操作中要做的事情是这样的:
MyMailer.send_mail(params[:mail][:attachment]).deliver
params[:mail][:attachment] 是随表单上传的临时文件的路径。怎么可能做到这一点?
这也暗示了另一个问题:发送邮件后,我是否应该从临时文件中手动删除文件?如果是,如何?