是否可以创建不包含任何视图的Rails mailer?
当处理纯文本邮件时,能够直接在mailer中插入正文内容并且无需使用仅包含一行文本(或一条I18n键)的视图将是很酷的。
某种程度上,我正在寻找类似于ActionController中的“render:text =>”但用于ActionMailer的解决方案。
是否可以创建不包含任何视图的Rails mailer?
当处理纯文本邮件时,能够直接在mailer中插入正文内容并且无需使用仅包含一行文本(或一条I18n键)的视图将是很酷的。
某种程度上,我正在寻找类似于ActionController中的“render:text =>”但用于ActionMailer的解决方案。
def welcome(user)
mail to: user.email,
from: "\"John\" <admin@domain.ch>",
subject: 'Welcome in my site',
body: 'Welcome, ...'
end
如果你打算使用HTML,请不要忘记使用默认为text/plain的content_type选项指定它。
content_type: "text/html"
通过尝试,我找到了方法:
mail(:to => email, :subject => 'we found the answer') do |format|
format.text do
render :text => '42 owns the World'
end
end
这也在Rails指南中提到了:http://guides.rubyonrails.org/action_mailer_basics.html,第2.4节。