我有一个名为'dropbox'的模型,它扩展了'program'。程序具有以下验证:
validates_presence_of :network_id, :name
所以当你尝试创建一个dropbox,把它们留下来时,你(不出所料)得到以下的vaidation消息:
* Network can't be blank
* Name can't be blank
问题是,在'dropbox'的上下文中,我们称之为'网络''类别'。如何更改网络不能为空错误消息类别不能为空
--- ---编辑
我试过了:
activerecord:
attributes:
dropbox:
network_id: Category
但这没有任何影响。但是,这有效:
activerecord:
attributes:
programme:
network_id: Category
但会在任何地方更改网络名称(因为我只需要将其更改为dropbox)。我相信这是因为network_id是程序中的属性而dropbox只是对此进行扩展,但必须有一种方法!
答案 0 :(得分:2)
您可以使用以下语言环境:
activerecord:
attributes:
dropbox:
network: Category
将其粘贴在config / locales / en.yml中以更改显示的属性名称。创建一些错误消息:
errors:
messages:
dropbox:
cant_be_blank: Oops!
然后向模型添加消息选项:
validates_presence_of :network_id, :name, :message => I18n.t('activerecord.errors.messages.dropbox.cant_be_blank')
可以找到更多信息here。