我目前正在开发线性优化工具,我想保证输入数据的有效性。因此,我已经定义了各种“验证”方法,例如:
validates :production_coefficient_machines, :numericality => { :greater_than_or_equal_to => 0}, :allow_nil => true
我真的想要包含描述性错误消息。我试过了:
validates :storage_cost, :numericality => { :greater_than => 0, :message => "Please enter positive values"}, :allow_nil => true
验证有效,但我不会看到任何错误消息。我也尝试将该方法添加到form.html:
<%= form_for(@product_a) do |f| %>
<% if @product_a.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@product_a.errors.count, "error") %> prohibited this product_a from being saved:</h2>
<ul>
<% @product_a.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
指向index.html,但由于该方法是针对product_a表单编写的,因此无法在index.html中使用。
如何轻松实现错误消息?
答案 0 :(得分:0)
如果您的产品尚未保存,则Controller
不应该引导您执行index
操作,它应该重新呈现具有上述形式的new
操作。在表单中,您可以使用
f.error_messages
表单构建器的方法。