`
ppenny
  • 浏览: 31556 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

解决rails mysql中文乱码

阅读更多
今天开始学着用RoR写一个blog程序,首先碰到的就是要解决中文乱码问题。我的rhtml显示的中文是正常的,mysql里面是乱码(mysql已经设为utf8,所以是生成的rhtml的问题)。
设置mysql不难,直接把默认的latin1设为utf8,对于Radrails里的中文显示设置project属性的info中的编码为utf8。而rails的设置要添加一些代码:
先说这两句,我也是在网上搜得,上面说要把这两行代码加到environment.rb中
$KCODE = 'u'
require 'jcode'
而且还要在do和end中间,结果我把这两行去掉了照样能够解决乱码,看来这是老版本的rails的做法吧。
不过下面几行应该是起作用的
在application.rb下面添加:
before_filter :configure_charsets
def configure_charsets
@response.headers["Content-Type"] = "text/html; charset=utf-8"
# Set connection charset. MySQL 4.0 doesn’t support this so it
# will throw an error, MySQL 4.1 needs this
suppress(ActiveRecord::StatementInvalid) do
ActiveRecord::Base.connection.execute 'SET NAMES UTF8'
end
end
问题解决。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics