rails 3邮件宝石

时间:2011-05-10 12:01:26

标签: ruby-on-rails ruby ruby-on-rails-3 email

我的电子邮件主题是我的rails 3应用程序,如下所示:

我尝试使用mail.subject将此主题在我的数据库(mongodb)中保存为字符串字段,但是我收到错误'String not valid UTF-8'??

任何人都知道我是如何解决这个问题的?

非常感谢 瑞克

1 个答案:

答案 0 :(得分:0)

您没有显示任何示例代码,但看起来返回的主题不是UTF-8编码,而是您的数据库。在保存主题之前尝试使用force_encoding

mail.subject.force_encoding("UTF-8")

修改

对于红宝石1.8.7,从String.force_encoding() in Ruby 1.8.7 (or Rails 2.x)

无耻地被盗
require 'iconv'
class String
  def to_my_utf8
    ::Iconv.conv('UTF-8//IGNORE', 'UTF-8', self + ' ')[0..-2]
  end
end

然后......

mail.subject.to_my_utf8