Tam*_*Tam 197 ruby-on-rails ruby-1.9
我正在使用Ruby 1.9.1和Rails 2.3.4我的应用程序是处理文本输入
如果我尝试类似的东西(内部引号看起来不同)
text = "”“"
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
#<SyntaxError: /Users/tammam56/rubydev/favquote/lib/daemons/twitter_quotes_fetch.rb:54: invalid multibyte char (US-ASCII)
/Users/tammam56/rubydev/favquote/lib/daemons/twitter_quotes_fetch.rb:54: invalid multibyte char (US-ASCII)
/Users/tammam56/rubydev/favquote/lib/daemons/twitter_quotes_fetch.rb:54: syntax error, unexpected $end, expecting keyword_end
Run Code Online (Sandbox Code Playgroud)
我需要使用这些引号,因为用户可能会输入它们,我必须考虑到这一点?
有任何想法吗?
小智 690
您是否尝试在使用非ASCII字符的脚本中添加魔术注释?它应该在脚本之上.
#!/bin/env ruby
# encoding: utf-8
Run Code Online (Sandbox Code Playgroud)
它对我来说就像一个魅力.
小智 43
如果要轻松地在项目的所有源文件上添加魔术注释,可以使用magic_encodinggem
sudo gem install magic_encoding
Run Code Online (Sandbox Code Playgroud)
然后magic_encoding从应用程序的根目录中调用终端.
Ism*_*moh 17
我只是想添加我的解决方案:
我使用像ö,ü,ä这样的德语变音符号并得到同样的错误.
@Jarek Zmudzinski刚刚告诉你它是如何工作的,但这是我的:
将此代码添加到Controller的顶部:( # encoding: UTF-8
例如,使用带有变音符号的flash消息)
我的控制器示例:
# encoding: UTF-8
class UserController < ApplicationController
Run Code Online (Sandbox Code Playgroud)
现在你可以使用ö,ä,ü,ß,""等.
那些倾斜的双引号不是ASCII字符.错误消息误导他们是'多字节'.
这对我有用:
$ export LC_ALL=en_US.UTF-8
$ export LANG=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)