显示使用单个模型、导轨的'same field in different form'的不同验证消息



这里我使用错误消息注册和登录表单使用单一模型的设计用户。rb..我怎么能改变错误消息字段的电子邮件和密码为不同的形式?在用户。我使用:

 validates_presence_of :full_name       
 validates_presence_of :email, :message => "enter email"
 validates_confirmation_of :password
 validates_presence_of :password, :message=> "enter password"

报名表格:

= form_for(resource, :validate => true, :as => resource_name, :url => registration_path(resource_name)) do |f|
  %ul
    %li
      = f.label :full_name
      = f.text_field :full_name
    %li
    = f.label :email
      = f.email_field :email
    %li
      = f.label :password
      = f.password_field :password
    %li
      = f.label :password_confirmation
      = f.password_field :password_confirmation
    %li
      = f.label :zip
      = f.text_field :zip    
   = f.submit "Sign up", :class=> "btn btn-primary"

In sign In form:

= form_for(resource, :validate => true, :as => resource_name, :url => session_path(resource_name)) do |f|      
  %ul
    %li
      = f.label :email
      = f.email_field :email
    %li
      = f.label :password
      = f.password_field :password
    - if devise_mapping.rememberable?
      %li
        = f.check_box :remember_me
        = f.label :remember_me
  %div
    = f.submit "Log in", :class=> "btn btn-primary mt10 ml60"

如何更改上述信息的签到形式?

默认情况下,登录表单将显示"无效的电子邮件或密码"。

这是故意的,因为对于sign in action来说,这种模糊的信息比具体的信息更好,比如"密码太短"、"电子邮件不存在"等。

我认为没有必要像其他正常格式那样修改它。

考虑这个问题的顶部答案:使用Rails完全自定义验证错误消息

这是一种非常灵活和可扩展的方式,可以修改各种模型属性的错误消息和字段名称以及它们相关的验证错误

最新更新