我正在查看rubygems.org的source code以进一步了解Rails以及如何将其用于功能性网站。
我遇到的一个问题是它们到底做了什么?:
<%= t 'download_count', :count => number_with_delimiter(@downloads_count) %>
<%= t '.welcome_blurb' %>
将download_count
和.welcome_blurb
变量存储在哪里?如果是这样,我在哪里找到它以及它如何知道在哪里看?
答案 0 :(得分:7)
download_count
和.welcome_blurb
是已翻译的字符串,您可以在config/locales/
目录中的文件中找到它们,文件名与该语言相对应,在本例中为en.yml
英文:
download_count
:https://github.com/rubygems/rubygems.org/blob/master/config/locales/en.yml#L11
.welcome_blurb
:https://github.com/rubygems/rubygems.org/blob/master/config/locales/en.yml#L31
welcome_blurb
之前的点表示延迟查找,这意味着翻译的命名空间默认为您调用它的视图,如您在en.yml
文件中所示:
home:
index:
...
welcome_blurb: "Welcome to your community RubyGem host."
所以.welcome_blurb
实际上意味着home.index.welcome_blurb
。
有关详细信息,请参阅rails i18n documentation。
答案 1 :(得分:1)
t
是编写I18n.translate
的简写方式,它将使用区域设置文件(可能在config / locales中)来呈现适合当前语言设置的文本。
有关详细信息,请参阅http://guides.rubyonrails.org/i18n.html。