【发布时间】:2011-04-19 02:59:30
【问题描述】:
我看到 IE8、Rails 3.0.3、PostgreSQL 和 delay_job 的组合出现了一个相对奇怪(且难以诊断)的错误。
我的一个页面上有一个文本区域,在控制器中我延迟了一条消息,其中包含一个包含来自文本区域内容的对象的延迟作业:
SomeMailer.delay.send_message(message)
这在 Chrome、FF、Safari 上运行良好。但是在 IE8 only 中,only 当我在文本区域中实际输入文本时,看起来只有当我在文本区域中输入回车时(我认为) ,我从控制器收到此错误:
UTF-8 中的无效字节序列
这在我看来是当delayed_job 通过ActiveRecord 将作业序列化到数据库时,它不喜欢换行符(\r\n) 中的字符编码。有点难以弄清楚,因为我不知道这是 IE、Rails、delayed_job 还是 Postgres 问题。
旁注:我在本地收到此错误,但 Heroku 上似乎没有出现此错误 - 所以他们的数据库配置可能比我好?
环境:
- 导轨 3.0.3
- Ruby 1.9.2
- Postgres 8.4 - 编码 UTF8,排序规则 en_US.UTF-8
- 延迟作业 2.1.4
- IE 8
任何想法都将不胜感激。
【问题讨论】:
标签: ruby-on-rails internet-explorer postgresql utf-8 delayed-job