1.在radrails中,请在project的property对话框中,左边选中info节点,右边设置编码方式为UTF-8

2.修改MySQL的配置文件C:\Program Files\MySQL\MySQL Server 5.0\my.ini,改其中的两处default-character-set=utf8,改完后重启MySQL(windows服务)。这一步也可采用instance wizard来做。

3.运行你的建库脚本,建库脚本中无须涉及到任何编码问题。

4. 修改ApplicationController 如下:

class ApplicationController < ActionController::Base
  before_filter :configure_charsets
    def configure_charsets
      # @headers["Content-Type"] = "text/html; charset=utf-8"
      @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
end

5.请在rhtml中,或者适当的layout中,加上:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

至此,无论是在Mysql中,前台页面中,还是在IDE中,都能正常使用中文

6.关于ruby本身的中文字串处理问题,例如size,substring等,请查看此文
http://www.blogjava.net/cap/archive/2006/12/14/87830.html

 

评论
发表评论

您还没有登录,请登录后发表评论

koska
搜索本博客
最近加入圈子
最新评论
评论排行榜