【发布时间】:2014-08-20 18:59:40
【问题描述】:
我想为我拥有的每个验证显示一条自定义错误消息,我已经完成了这个但不是全部。
validates :first_name, presence: {message: "No escribistes tu nombre."}
validates :last_name, presence: {message: "No escribistes tu apellido."}
validates :mobile_phone, presence: { message: "No escribistes tu número de teléfono celular."}
validates :mobile_phone, length: { minimum: 10, message: "Número de celular debe contener mas de 10 números." }
这很好用,只是它总是显示在错误消息之前:
FIRST NAME NO ESCRIBISTES TU NOMBRE.
LAST NAME NO ESCRIBISTES TU APELLIDO.
MOBILE PHONE NO ESCRIBISTES TU NÚMERO DE TELÉFONO CELULAR.
MOBILE PHONE NÚMERO DE CELULAR DEBE CONTENER MAS DE 10 NÚMEROS.
如何去掉自定义错误消息之前写的第一个FIRST NAME, LAST NAME, MOBILE PHONE, MOBILE PHONE?
另外,我想知道如何将first_name 的错误消息放在名字字段下?
这是我目前拥有的:
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<!--<%= devise_error_messages! %>-->
<% if @user.errors.any? %>
<% @user.errors.full_messages.each do |msg| %>
<div class="alert alert-danger"><%= msg %></div>
<% end %>
<% end %>
<div>
<%= f.text_field :first_name, autofocus: true, placeholder: 'Nombre' %>
<%= f.text_field :last_name, placeholder: 'Apellido' %>
</div>
<div class="m-t">
<%= f.telephone_field :mobile_phone, placeholder: '787-878-7878' %>
</div>
<div><%= f.submit "SIGN UP", class: 'custom-input-2 m-t' %></div>
<% end %>
如何摆脱错误列表,而只在其特定字段下显示错误。
谢谢。
【问题讨论】:
-
谢谢我只需要添加
<%= @user.errors[:first_name].join %>等等
标签: ruby-on-rails validation messages