0

为了在 Rails 3 中使用 ActionMailer 呈现文本(不是 html)消息,我看到许多线程指示程序员创建.text.erb文件并运行以下代码:

mail do |format|
  format.html
  format.text
end

...但我希望呈现一条非常短的消息,根本不使用邮件视图。我以 html 格式成功执行此操作,但没有以纯文本格式执行此操作。

我使用以下代码:

mail do |format|
  format.html{ render( text: 'my text' ) }
  format.text{ render( text: 'my text' ) }
end

...但它每次都会发送一封 html 电子邮件。我可以做些什么来发送纯文本电子邮件并在没有邮件程序视图文件的情况下指定其内容?

4

1 回答 1

2

来自文档

如果您对同一操作有不同的模板,Action Mailer 将自动发送多部分电子邮件。因此,对于我们的 UserMailer 示例,如果您在 app/views/user_mailer 中有 welcome_email.text.erb 和 welcome_email.html.erb,Action Mailer 将自动发送多部分电子邮件,其中 HTML 和文本版本设置为不同部分。

做就是了:

mail do |format|
  format.text{ render( text: 'my text' ) }
end

如果您只想要文本电子邮件。

于 2013-02-11T19:36:22.837 回答