2016-04-11 2 views
1

У меня ошибка: _ несовместимые кодировки символов: UTF-8 и Windows-1250_ , когда я пытаюсь показать что-то с символами из Польши, т.е. 'Ąęźć'Ошибка кодирования администраторов Rails, когда я пытаюсь использовать «windows-1250»

в моем application.rb я получил: config.encoding = "Windows-1250"

В database.yml: кодирование: Windows-1250

Как я могу показать Params в windows-1250 в панели администратора rails?

+0

Что такое кодировка вашей ОС и что такое кодировка ruby? Я настоятельно рекомендую вам не использовать CP1250 и придерживаться UTF-8 –

+0

Я делаю приложение поверх существующей базы данных, поэтому я не могу изменить кодировку.
Когда я делаю строку в консоли для этого приложения и выполняю string.encoding, я получил: # <Кодирование: CP852> – KacperM

+0

Просьба предоставить больше контекста, как полный стек. Что-то приходит в UTF-8 и, как представляется, затем преобразуется в CP1250. Но трудно сказать. При запуске сервера вы можете установить флаг кодирования в «-E CP1252». –

ответ

0

Я бы посоветовал вам пойти с кодировкой utf-8 (которая в настоящее время является по умолчанию рубином).

Ваш вход 'ęźęźć' является допустимой строкой utf-8, поэтому вы не столкнетесь с проблемой декодирования его как строки utf-8.

Если вы все еще хотите взломать вокруг, вы можете использовать:

'ąęźć'.mb_chars.tidy_bytes.to_s

, который должен также дать вам желаемый результат.

+0

Я делаю приложение поверх существующей базы данных, поэтому я не могу изменить кодировку. – KacperM

 Смежные вопросы

  • Нет связанных вопросов^_^