Tas*_*ass 7 email attachment actionmailer ruby-on-rails-3
我正在成功生成并发送包含以下代码的电子邮件.
class UserMailer < ActionMailer::Base
default :from => 'user@user.com',
:date => Time.now
def new_user(user)
mail_subject = ['WELCOME TO ACME, INC', 'USER ACTIVATION']
@user = user
mail.attachments['File One.pdf'] = File.read(File.join(ATTACHMENT_DIR, 'shared', 'file_one.pdf'))
mail.attachments['File Two.pdf'] = File.read(File.join(ATTACHMENT_DIR, 'shared', 'file_two.pdf'))
mail.attachments['File Three.pdf'] = File.read(File.join(ATTACHMENT_DIR, 'shared', 'file_three.pdf'))
mail.attachments['File Four.pdf'] = File.read(File.join(ATTACHMENT_DIR, 'shared', 'file_four'))
mail( :to => user.address.email,
:subject => mail_subject.join(' ~ ').upcase )
end
end
Run Code Online (Sandbox Code Playgroud)
但是,该电子邮件包含三个文本文档,这些文档与电子邮件正文的内容相同.我用于邮件程序的视图名为new_user.text.erb.
我怀疑对于我附加的每个pdf文档,也会生成一个纯文本文档,第一个是实际的电子邮件文档正文,其余三个与pdf文档一起附加.
如何在不附加这些(重复)文本文件的情况下附上这些pdf文件?有没有其他人遇到这个?
尝试使用附件['..']而不是mail.attachments ['..],它以这种方式工作,并且没有观察到重复.
我在Rails 3.0.7上,邮件2.2.19:
我看到的唯一的另一个区别是,我有一个mime_type和内容的哈希.但我认为它也是另一种方式,它只是分配一个不合适的哑剧类型.
attachments['event.ics'] = {:mime_type=>'text/calendar', :content => ics}
mail({
:to => email,
:subject => subject,
}) do |format|
format.text { render :inline => mail_template }
...
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3890 次 |
最近记录: |