Я использую Ruby on Rails 3.1.1, и я пытаюсь перевести тело сообщения электронной почты. Я создал / указал все необходимые "вещи" (файлы YAML, пары ключ / значение, ...), чтобы гем I18n работал: сообщения электронной почты отправляются без проблем с использованием языка по умолчанию (: en
) .
Затем я добавил новый язык и сделал все, что нужно было сделать, чтобы гем I18n работал с другим языком и всегда получал параметр locale = de
в URL-адресах.
class ApplicationController < ActionController::Base
before_filter :set_locale
def set_locale
if params[:locale] && I18n.available_locales.include?(params[:locale].to_sym)
I18n.locale = params[:locale]
end
end
...
end
Однако, когда я отправлял электронное письмо, даже если языковой стандарт задан правильно (например: locale = de
), отправленное электронное сообщение не переводится (они по-прежнему используют значение по умолчанию : en
] язык).
Как заставить I18n переводить тело сообщений электронной почты?
params
...)? Есть ли лучшее решение?