【发布时间】:2016-08-08 20:15:21
【问题描述】:
我有三个模型,分别称为 Account、User 和 AccountPermission。
我在创建用户时通过AccountPermission 创建Account。
但是,如果出现与 Account :name 相关的问题,系统会抛出类似下面的内容。
Account permissions account name has already been taken
所以,我只需要修复此错误消息。
我尝试将消息属性添加到我的验证中。它只是附加到实际消息。
我也尝试过语言环境。仍然只是附加
en:
activerecord:
errors:
models:
account:
attributes:
name:
taken: 'bla bla'
据我在ActiveModel 中看到的。此消息的结构来自下面
ActiveModel 中的locale/en.yml
en:
errors:
format: "%{attribute} %{message}"
那么,有什么方法可以轻松编辑此消息吗?如果我什至删除模型名称,就足够了。
【问题讨论】:
-
您是在问是否可以在验证失败时抛出自定义错误消息?
标签: ruby-on-rails ruby activemodel