【发布时间】:2015-07-31 08:35:32
【问题描述】:
我有一个使用西里尔(马其顿)字母的应用程序。我有一个包含所有字母的字母菜单(手动输入为我从助手调用它的数组),它链接到第一个字符是该字母的项目。因此,似乎“К”和“Ќ”(也称为“Г”和“Ѓ”)列出了相同的项目,就好像它们使用相同的字母一样。在开发中效果很好,不知道为什么它在生产中这样做。我在生产数据库上设置了 UTF-8 编码。
这是产品日志。它没有得到相同的字符。
App 18197 stderr: Started GET "/letterfilter?title=%D0%8C" for IP at2015-07-30 12:03:46 -0400
App 18197 stderr: Processing by PostsController#letterfilter as HTML
App 18197 stderr: Parameters: {"title"=>"Ќ"}
App 18197 stderr: Rendered posts/letterfilter.html.haml within layouts/application (4.3ms)
App 18197 stderr: Rendered posts/_search.html.haml (0.8ms)
App 18197 stderr: Rendered shared/_header.html.haml (9.6ms)
App 18197 stderr: Rendered shared/_footer.html.haml (0.2ms)
App 18197 stderr: Completed 200 OK in 18ms (Views: 16.6ms | ActiveRecord: 0.2ms)
App 18197 stderr: Started GET "/letterfilter?title=%D0%9A" for IP at 2015-07-30 12:03:51 -0400
App 18197 stderr: Processing by PostsController#letterfilter as HTML
App 18197 stderr: Parameters: {"title"=>"К"}
App 18197 stderr: Rendered posts/letterfilter.html.haml within layouts/application (4.9ms)
App 18197 stderr: Rendered posts/_search.html.haml (0.7ms)
App 18197 stderr: Rendered shared/_header.html.haml (7.7ms)
App 18197 stderr: Rendered shared/_footer.html.haml (0.2ms)
App 18197 stderr: Completed 200 OK in 17ms (Views: 14.2ms | ActiveRecord: 0.9ms)
什么可能导致此问题?我应该将我的数据库编码更新为 utf8mb4 吗?
欢迎任何帮助。谢谢。
【问题讨论】:
-
如果mysql或者rails的问题结束了?
-
@ManishShrivastava 我不确定,真的。它在本地服务器上按预期工作,但在生产环境中不同。
标签: mysql ruby-on-rails encoding utf-8