Ruby on rails i18n:特定型号的错误消息本地化
我可以为每个验证本地化错误消息,但如何为特定模型创建错误消息呢 普通区域设置如下所示:Ruby on rails i18n:特定型号的错误消息本地化,ruby-on-rails,ruby,localization,internationalization,Ruby On Rails,Ruby,Localization,Internationalization,我可以为每个验证本地化错误消息,但如何为特定模型创建错误消息呢 普通区域设置如下所示: en: mongoid: errors: messages: taken: "It is already taken" 但我想更改用户型号的消息: en: mongoid: errors: messages: taken: "It is already taken" user: taken:
en:
mongoid:
errors:
messages:
taken: "It is already taken"
但我想更改用户
型号的消息:
en:
mongoid:
errors:
messages:
taken: "It is already taken"
user:
taken: "It is already taken. %{link_to 'Remember password', reset_password_path'}"
试试这个:
en:
mongoid:
errors:
messages:
taken: "It is already taken"
models:
user:
attributes:
login:
taken: "It is already taken. %{link}"
参考资料:
PS:
本地化字符串应使用插值变量进行动态替换
例如:
在用户
对象的登录
字段中添加错误:
user.errors.add(:login, :taken, :link => "foo")
你能解释一下你是怎么知道的吗?我如何理解本地化中我需要的任何东西的路径?PS:作为我刚才使用的链接,ActiveRecord代码注释中提到了原始HTMLIt。我假设mangoid可能遵循相同的约定。我尝试将链接添加到密码重置表单,但始终出现以下错误:
在“中缺少插值参数”无效。单击%{link}重新向您发送密码。确认“({:model=>“User”,:attribute=>“password token”,:value=>nil}给定)
。Rails 3.1中有什么变化吗?