ruby-on-rails – i18n:特定模型的错误消息本地化

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – i18n:特定模型的错误消息本地化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我可以本地化每个验证的错误消息,但是如何为特定的模型创建一个错误.

普通地区如下所示:

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}"

参考:

ActiveRecord code comments

PS:
本地化字符串应使用插值变量进行动态替换.

例如:
用户对象的登录字段中添加错误

user.errors.add(:login,:taken,:link => "foo")

猜你在找的Ruby相关文章