用rails里的actionmailer发邮件的时候遇到了编码问题,主要是很多邮件客户端和web界面都缺省邮件内容的编码为gb2312,而rails里则是缺省使用utf8的。
这在纯文本邮件的情况下非常明显,要解决这个问题有两种办法:
1.干脆rails里用gb2312。
2.使用html格式,还是用utf8。
最后还是决定用html格式,仍然用utf8,因为要发的是多语种邮件,所以肯定要用utf8。
在邮件内容里设置好 utf8:
在发送的方法里加上:
这样在大多数情况下都不会出现乱码了。
这在纯文本邮件的情况下非常明显,要解决这个问题有两种办法:
1.干脆rails里用gb2312。
2.使用html格式,还是用utf8。
最后还是决定用html格式,仍然用utf8,因为要发的是多语种邮件,所以肯定要用utf8。
在邮件内容里设置好 utf8:
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
在发送的方法里加上:
@content_type= "text/html"
这样在大多数情况下都不会出现乱码了。
本文介绍了解决Rails中ActionMailer默认使用UTF-8编码导致的乱码问题。通过将邮件内容设置为HTML格式并指定UTF-8编码,可以有效避免多语种邮件在不同客户端上的显示问题。
462

被折叠的 条评论
为什么被折叠?



