我有一个Query类,我希望它的human_readable名称在活动记录错误消息中为“Search”。 activerecord本地化树如何查找这种情况?
我试过了:
en:
activerecord:
models:
query: "Search"
errors:
models:
query:
attributes:
name:
unique_within_scope: "blah blah"
并且属性东西通过以下方式工作:
errors.add(:name, I18n.t('activerecord.errors.models.query.attributes.name.unique_within_scope'))
在模型中。但我希望将unique_within_scope的错误消息转换为:
“搜索保存失败: blah blah“
而不是:
“查询保存失败: blah blah“
就像现在一样。
任何帮助表示赞赏。谢谢!
答案 0 :(得分:1)
它确实有效,我只需要重启服务器。
答案 1 :(得分:0)
当你的方法奏效时,这会更清洁:
errors.add(:name, :unique_within_scope)
然后只需定义资源字符串
activerecord.errors.models.query.attributes.name.unique_within_scope
换句话说,如果您传入一个符号,它会认为它是一个资源键,并会在您的资源包中查找它。
另一个好处是您还可以定义
activerecord.errors.messages.unique_within_scope
为此类型的错误(由不同的模型或不同的属性使用)设置默认消息,然后您可以根据需要覆盖特定模型。