我是红宝石和铁轨的新手。
我尝试使用has_secure_password创建身份验证。
一切都很好,直到我试图覆盖password_digest字段的错误消息。
我已经搜索过了,但所有的问题都是关于“如何将'密码摘要无法通过空白'更改为'密码无法通过空白'”
我知道这可以在config / locales / en.yml中进行更改,但如果我想更改整个消息该怎么办。
假设我需要一条消息,例如“密码摘要不能填空,请填写”或用其他语言留言
这可能吗?
答案 0 :(得分:1)
我意识到这篇文章已有数年历史了,但是对于这个问题,它仍然是最先出现的。就是说,如链接here所示,如果您为has_secure_password提供options参数,并在对象内部放入validations: false
,则可以制作自己的验证消息。请注意,这将取消所有验证方法,因此您必须在长度和确认方面进行选择。
例如,
has_secure_password(options={validations:false}
validates :password, presence: {message: "Password was not entered"}
验证失败后,现在将显示“未输入密码”。
答案 1 :(得分:0)
这是解决方案的一个很好的例子: