我正在使用Ruby on Rails 3.1,我想知道如何正確處理與郵件程序相關的國際化。也就是說,...與郵件程序使用i18n寶石的問題
...我app/views/users/mailer/_custom.html.erb
文件我有:
...
<%= @test_email.to_s %>
...
...我app/mailers/users/mailer.rb
文件我有:
class Users::Mailer < ActionMailer::Base
def custom(user)
...
@test_email = t('test_email')
# I also tried to use '@test_email = I18n.t('test_email')'
end
end
通過使用上面的代碼@test_email.to_s
發送的電子郵件中不顯示文本(它似乎是空白的),並且I18n gem似乎沒有正確完成應該完成的操作。 如何解決這個問題,以便在「目標」電子郵件正文中正確顯示區域設置消息?
UPDATE爲@volodymyr
你在你的答案發布的代碼不會爲我工作。我想也對下面的代碼添加到我的config/locales/defaults/en.yml
文件:
en:
hello: Test text!!!
的Test text!!!
仍然沒有在發送的電子郵件(它是空白)顯示。
嘗試用引號括起來。例如 en: hello:「測試文本」 – 2012-01-07 19:39:12
@volodymyr - 問題與引號無關...請閱讀下面的註釋以獲取更多信息。 – user12882 2012-01-07 19:48:10