我有一个Rails 3.10的程序,使用NetBeans建立,全部默认,在NetBeans里面,点“运行”运行程序,一切正常,包括数据库的读写,页面的中英文混合写在一起,都没有问题
如果自己进行程序目录下,运行rails s启动程序,启动也没有错,但是在访问页面时,有中文的地方,会出现“invalid multibyte char (US-ASCII)”错误
我猜NetBeans是不是在启动时,全局设定了Rails的编码为UTF-8,所以在NetBeans里面启动没问题,而自己用命令启动就会有问题
如何解决这样的问题呢,谢谢?
我有尝试在.rb文件头部加上# -*- coding: utf-8 -*-,倒是能正常运行了,但是我并不满意,首先NetBeans里面为什么不用设置就能正常运行,其次,程序有很多文件,一个个加实在麻烦,还容易忘记
ruby -Ku script/rails server
加上-Ku参数,在RUBY 1.9就行了
另外一个方法要修改源码 不推荐使用
http://abitno.me/encoding-problems-in-ruby-19
你可以看看
[url]http://tech.ddvip.com/2008-01/120060231440625.html[/url]写的比较清楚。
或者是javaeye的老帖子
[url]http://www.iteye.com/topic/53673[/url]
希望对你有用。