尝试在我的视图中使用config / locales / de.yml中的活动记录翻译。我以为我很聪明地使用它:
de:
activerecord:
attributes:
user:
login: "Benutzerkennung"
comment: "Bemerkungen"
在我看来:
<%= label_tag :login, t('activerecord.attributes.user.login') %>
但我没有翻译价值(“Benutzerkennung”),而是臭名昭着 “翻译缺失:de,activerecord,attributes,user,login”
有没有人有这个工作(不使用标签翻译插件(我担心潜在的副作用),或者User.humanize_attribute_name)?我错过了什么? (当我使用“activerecord1”或者其他东西而不是activerecord时它确实有效,所以我的设置似乎很好)
谢谢!
答案 0 :(得分:15)
好的,我的坏,它确实很好用。我陷入了YML格式陷阱:(
为了帮助您一路调试,请使用“script / console”和以下语句: - I18n.locale - &gt;应输出您要检查的区域设置 - I18n.t('activerecord.attributes') - &gt;应该为你的翻译提供所有的键/值对,如果没有,你在YML文件中出现格式错误或者找不到它
顺便说一句 - 这个插件效果很好http://github.com/iain/i18n_label/ 如果你不喜欢“.human_name”(插件使用的)的结果,那就回到I18n.t('你的钥匙')
答案 1 :(得分:8)
另一种方法:
<%= label_tag :login, User.human_attribute_name(:login) %>
答案 2 :(得分:0)
你应该将Rails gem升级到v2.3.11(我试过使用2.3.9,但是现在它不可用,所以我建议你使用2.3.11)!
gem install -v=2.3.11 rails
您可以在此处找到此问题:Rails 2.3.9 Release notes