①、安装mysql时,默认字符集为latin1 (无须改动)
②、通过这种方式生成你的应用(myblog),以便配置mysql: rails myblog -d mysql
③、修改.\config下的database.yml : encoding: utf8
④、确保你所用的数据库:character_set_database ='utf8',如果不是(默认为latin1),
可以通过Create DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
或者Alert DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;来设置
⑤、如果你是通过ActiveRecord插入数据,那么ActiveRecord连接数据库时,也要加上
:encoding => 'utf8' (相当于在mysql下执行set names 'utf8') 此时插入中文时会出错提示
Mysql::Error: Incorrect string value:'\xB1\xB1\xBE\xA9\xD0\xF1...'那么需要将你的程序文件另存为utf8格式
当然如果改为:encoding => 'gb2312',就不会出现上面的错误,不过我还是提倡:encoding => 'utf8',毕竟utf8比gb2312更强大嘛!
⑥、所有.html.erb文件都另存为utf8格式
*PS:
可以通过UltraEdit来另存,方法如下:“文件-->转换-->ASCII到UTF-8(Unicode编辑)”,然后保存即可。
mysql查看字符集命令:
SHOW VARIABLES LIKE '%collation%';
SHOW VARIABLES LIKE '%character%';