0

在这里,我使用具有单一模型 user.rb 的设备注册和登录表单的错误消息。如何更改字段电子邮件的错误消息和不同表单的密码?在 user.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"

登录表格:

= 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"

如何更改上述登录表单的消息?

4

2 回答 2

0

考虑这里问题的最佳答案:Fully custom validation error message with Rails

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

于 2013-04-22T20:14:37.330 回答
0

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

这是故意的,因为对于登录操作,这种模糊的信息比具体的信息要好,比如“密码太短”、“电子邮件不存在”等。

我认为没有必要像其他正常形式那样将其更改为特定的。

于 2013-04-22T06:04:34.923 回答