多字节符号在rails3中无法正确显示

时间:2012-09-13 06:09:50

标签: mysql ruby-on-rails-3 utf-8

我刚刚将应用从rails 2.3.14升级到3.2.8 红宝石一直保持在1.8.7

在源自Word女士并粘贴到rails应用程序的2.3.14应用程序符号显示正常。在升级后的应用程序中,他们不会。

示例:

在Rails 3中不会

在Rails 2中不会

请注意,在这两种情况下,应用程序都显示来自同一Mysql数据库的内容。

1 个答案:

答案 0 :(得分:1)

我感觉到你的痛苦!我们刚刚经历了同样的问题。

@Fredrick Cheung在上面是正确的。解决它的唯一方法是更新列格式而不转换数据。简单地在SQL中更改列格式会导致您的utf数据再次转换为utf,这真的搞砸了!

我们提出的解决方案是将列格式更改为二进制或blob,然后再将其更改为utf8。这可以防止第二次转换。对VARCHAR使用二进制文件,对TEXT使用blob,一切都应该没问题。

祝你好运