我正在使用Rails 3.1(3.1.1 RC1),并且我配置了ActionMailer以使用windows-1252
作为默认编码。 (外部要求)如何在Rails 3中强制对HTML电子邮件进行字符编码?
这与纯文本邮件完美结合,但只要我发送HTML邮件,文本就会再次转换为UTF-8
,从而导致出现乱码文本。
这是我所做的/发现的。
- 我配置的默认编码:
ActionMailer::Base.default :charset => 'windows-1252'
- 我.erb模板实际上是
windows-1252
编码。 - 我添加了所需标记
<%# encoding: windows-1252 -%>
作为模板的第一行。 - 邮件有一个正确的内容类型头:
Content-Type: text/html; charset="windows-1252"
下面的代码片段我用来发送邮件:
mail(:to => ..., :subject => "...") do |format|
format.html
end
我怀疑,不知怎的,在邮件处理的Rails /的ActionMailer决定将字符转换为UTF-8。我该如何改变它?
我已经这样做了。 (第一个要点) –
我以为在邮件程序中这样做可能会改变一些东西 – apneadiving
好吧,我会试试 –