Rails 3 无效的多字节字符(US-ASCII)
Posted
技术标签:
【中文标题】Rails 3 无效的多字节字符(US-ASCII)【英文标题】:Rails 3 invalid multibyte char (US-ASCII) 【发布时间】:2011-04-24 10:25:56 【问题描述】:我找到了一个类似的帖子here,但我仍然无法解决问题。
我知道了
/home/fra/siti/Pensiero/db/seeds.rb:32: invalid multibyte char (US-ASCII)
/home/fra/siti/Pensiero/db/seeds.rb:32: invalid multibyte char (US-ASCII)
/home/fra/siti/Pensiero/db/seeds.rb:32: syntax error, unexpected $end, expecting ')'
... ed il valore della vita, si è malati", :user_id => 1, :cat...
问题出在这个字符串中
:body => "Nel momento in cui ci si chiede il significato ed il valore della vita, si è malati"
我遇到了每个带有重音的“e”字符的问题,比如“è é”
我尝试了魔术评论# coding: utf-8
,但它不起作用。
有什么想法吗?
【问题讨论】:
ruby 1.9.2p0,rails 3.0.0,我正在使用 rvm Rails 应该这样做,但您能否检查一下 $KCODE == 'utf-8'? 可能重复***.com/questions/3678172/… ***.com/a/2105210/1028100 【参考方案1】:只需将以下行作为文件的第一行:
# -*- coding: utf-8 -*-
它会起作用的。
【讨论】:
【参考方案2】:不要添加# coding: UTF-8
,而是尝试在文件的第一行添加# encoding: UTF-8
。
它对我有用。我在这里找到了信息:http://groups.google.com/group/sinatrarb/browse_thread/thread/f92529bf0cf62015
【讨论】:
【参考方案3】:在您使用非 ascii 字符的脚本中添加魔术注释?它应该在脚本之上。
# encoding: utf-8
它对我来说就像魅力一样。
或者如果你想扩大项目范围,你可以选择magic-encodinggem
【讨论】:
【参考方案4】:我换行了:
gem 'pdf-writer', :git => 'git://github.com/metaskills/pdf-writer.git'
这对我有用。
【讨论】:
【参考方案5】:取自http://devsolvd.com/questions/rails-3-invalid-multibyte-char-us-ascii
gem 'pdf-writer', :git => 'git://github.com/metaskills/pdf-writer.git'
这对我很有用
【讨论】:
以上是关于Rails 3 无效的多字节字符(US-ASCII)的主要内容,如果未能解决你的问题,请参考以下文章
Rails:当我运行 rake db:seed 时,US-ASCII 中的字节序列无效(参数错误)
编码 4 字节 UTF-8 字符 ????从 Rails 到 JSON 产生无效字符