我是ROR的新手。我正在尝试将翻译添加到我的应用程序。我添加了控制器的翻译。
在哪里添加模型的翻译,因为我没有任何/ config / locales - > models文件夹 - > en.yml文件。
在模型中我有像这样的线条 validates_presence_of:name,:message => “名称不能为空!”
如果我想为“姓名不能为空白”的消息添加翻译,我应该直接添加
validates_presence_of:name,:message => I18n.t(str_name_notblank)
请提出建议
答案 0 :(得分:2)
要向模型添加翻译,您只需将其放在activerecord->models
和activerecord->attributes
下即可。这是抛光的一个例子:
pl:
activerecord:
models:
patient: "Pacjent"
attributes:
patient:
first_name: "Imię"
last_name: "Nazwisko"
address: "Ulica"
postal_code: "Kod"
city: "Miejscowość"
请注意attributes
元素下的patient
元素不是,但实际上又包含了它。经过一些调试我发现了这个,它实际上对我有用。 Rails I18n guide提出了不同的结构,但它没有用。
翻译标准Rails消息的最佳方式(如用于验证的消息)是从Sven Fuchs'Rails Locale Data Repository (rails-18n)下载正确的翻译文件并将其放入您的config/locales
文件夹(您可以更改名称)。然后,您将删除:message
字符串,只使用标准消息,但会根据您的喜好进行翻译。