В Ruby on Rails '#encoding: utf-8' и 'config.encoding = "utf-8" "отличаются? - PullRequest
26 голосов
/ 08 октября 2011

Я могу указать любой файл ruby ​​для использования определенной кодировки, добавив строку комментария вверху:

#encoding: utf-8

Но в Rails 'config/application.rb я нашел это:

config.encoding = "utf-8"

Они разные?Если я установил config.encoding = "utf-8", мне все еще нужно #encoding: utf-8?

1 Ответ

41 голосов
/ 08 октября 2011

Часть config.encoding = "utf-8" в config/application.rb связана с тем, как рельсы должны интерпретировать содержимое.

#encoding: utf-8 в файле ruby ​​сообщает ruby, что этот файл содержит символы не ascii.

Эти два случая разные. Первый (в config/application.rb) что-то говорит rails и не имеет никакого отношения к тому, как сам ruby ​​должен интерпретировать исходные файлы.

Вы можете установить переменную окружения RUBYOPT=-Ku, если вы ленивы и хотите, чтобы ruby ​​автоматически установил кодировку файлов по умолчанию .rb для файлов на utf-8, но я бы лучше порекомендовал вам не использовать ascii биты в файле перевода и ссылка на него с I18n.t.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...