Как использовать отправить письмо с акцентом с помощью actionmailer - PullRequest
0 голосов
/ 26 марта 2010

Мой enviroment.rb выглядит так:

ActionMailer::Base.default_charset = "iso-8859-1"

которого должно быть достаточно для акцентов, но вот как отправляется тема сообщения:

Convite para Participaçà £ o de projeto

Кто-нибудь знает, что я должен сделать, чтобы это исправить?

Спасибо

Ответы [ 2 ]

0 голосов
/ 17 октября 2010

Просто удалите ваши настройки и позвольте Rails делать работу, используя кодировку по умолчанию, UTF-8.

Я все время работаю с электронными письмами и специальными символами, нет необходимости выполнять какие-либо преобразования или настройки, по крайней мере, в Rails 3. Пока ваши строки содержат правильные символы, у вас все будет хорошо.

Просто убедитесь, что ошибка кодирования не возникает при чтении данных из вашей базы данных.

0 голосов
/ 26 марта 2010

Ваши данные в iso-8859-1? Из примера ошибки видно, что на символ приходится два байта (обратите внимание на повторение Ã). Поскольку 8859-1 использует 1 байт на символ, я предполагаю, что ваши данные в формате utf-8.

Также убедитесь, что ваша база данных не выполняет никаких преобразований при входе или выходе данных.

Я настоятельно призываю вас использовать unicode / utf-8 везде - базу данных, html, электронную почту и т. Д. Это то, что все kool-kids используют в наши дни. 8859-1 это прошлый век!

Относительно писем

  config.action_mailer.default_charset = "utf-8"

это то, что я использую.

...