开发者

In Ruby on Rails, are '#encoding: utf-8' and 'config.encoding = "utf-8"' different?

I can specify any ruby file开发者_如何学运维 to use specific encoding by add a comment line at its top:

#encoding: utf-8

But in Rails' config/application.rb, I found this:

config.encoding = "utf-8"

Are they different? If I have set config.encoding = "utf-8", still I need #encoding: utf-8?


The config.encoding = "utf-8" part in config/application.rb is related to how rails should interpret content.

#encoding: utf-8 in a ruby file tells ruby that this file contains non-ascii characters.

These two cases are different. The first one (in config/application.rb) tells rails something, and has nothing at all to do with how ruby itself should interpret source files.

You can set the environment variable RUBYOPT=-Ku if you're lazy and want ruby to automatically set the default file encoding of .rb files to utf-8, but I'd rather recommend that you put your non-ascii bits in a translation file and reference that with I18n.t.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜