我面临一个奇怪的问题。在我的rails 3应用程序中,我支持英语和法语的国际化。在我的模板中,我写了类似这样的内容
<%= t "Hi %{person}!", :person => "Simpson" %>
当我将语言环境设置为法语时,一切正常,因为它已经为此进行了翻译,但是当我将语言环境设置为英语时,它会将输出设为
Hi %{person}!
在我的浏览器中。当我向en.yml添加翻译时,它工作正常。我不明白为什么需要在en.yml中为此添加翻译。此外,我不希望这种情况发生,有没有解决这个问题?
由于
答案 0 :(得分:1)
t
方法的第一个参数应该是一个键,所以你的视图应该是这样的:
<%= t :greetings, :person => "Simpson" %>
您的config/locales/en.yml
看起来像这样:
en:
greetings: Hi %{person}
和您的config/locales/fr.yml
之类似的事情:
fr:
greetings: Bonjour %{person}