【问题标题】:How can I fully change "Password doesn't match confirmation" error message activerecord [duplicate]如何完全更改“密码与确认不匹配”错误消息 activerecord [重复]
【发布时间】:2025-12-31 15:25:07
【问题描述】:

yml

en   
  activerecord:
    errors: 
      models: 
        user:
          confirmation: "Passwords do not match"

但我明白了

“密码密码不匹配”

我怎样才能摆脱“密码”?

【问题讨论】:

  • 您正在验证哪个字段?请提供字段名称。是password_confirmation吗?

标签: ruby-on-rails activerecord


【解决方案1】:

试试这个:

# config/locales/en.yml
en:
  activerecord:
    attributes:
      user:
        password_confirmation: "Passwords"
    errors:
      models:
        user:
          attributes:
            password_confirmation:
              confirmation: " do not match!"

【讨论】:

  • 这也可能会将字段的标签更改为“密码”,具体取决于表单的生成方式。无论哪种方式,这都不是正确的方法。
【解决方案2】:

我能给出的最好的办法是从错误消息中删除属性(这样你只会得到消息)-removing field name from validation error message

这是我们在Rails 4.0.2中使用的:

<% resource.errors.each do |attr,msg| %>
    <li><%= msg %></li>
<% end %>

【讨论】:

  • 这也是另一种选择。
  • 所以它是重复的,应该这样标记。