【问题标题】:Exibe correctly the Validation Error messages Rails正确显示验证错误消息 Rails
【发布时间】:2013-02-12 16:25:03
【问题描述】:

我不知道,但在我看来,出现了我的消息,但在出现模型名称之前,在我看来,我写了这个:

<% @cost.errors.messages.each { |m| %>
<%= m %> 
<%  } if @cost.errors.count > 0 %>

在我的模型中这样写:

   validates_length_of :types,:minimum => 3,:message => "Precisa ter no minimo 3 caracteres."

但是当 rails 检测到错误时,消息会显示为:

typesPrecisa ter no minimo 3 caracteres.

由于型号名称是什么,请在我看来输入

【问题讨论】:

  • 试试@cost.errors.full_message(或full_messages)

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1 rails-activerecord


【解决方案1】:

试试这个:

  <% @cost.errors.full_messages.each do |m| %>
      <%= m %> 
  <%  end if @cost.errors.present? %>

【讨论】:

  • 您应该测试 @cost.errors.present? 而不是计算它们并将其与零进行比较 ([].present? #=&gt; false)
  • @MrYoshiji 是的,你可以这样做:)
  • 我用这个,但是模型的名字连续出现我的问题,请问有什么问题
  • @overallduka 它不会显示模型的名称 bcz @cost.errors.full_messages 将返回一个数组。你可以在Rails console查看它
猜你喜欢
  • 2013-07-16
  • 2021-10-17
  • 1970-01-01
  • 2022-07-07
  • 2022-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-08
相关资源
最近更新 更多