这里的问题相当简单。
我在我的图标模型validates_presence_of :icon
中进行了验证。
当我尝试上传空图标时,我的视图中会自动显示红色消息“不能为空”。
问题是我正在使用标准块自行输出这些消息:
<% if @icon.errors.any? %>
<% @icon.errors.full_messages.each do |msg| %>
<%= msg %></li>
<% end %>
<% end %>
我不希望这两个错误消息都显示出来。如何消除自动生成的错误消息?
编辑:这是我的new.html.erb文件,其中正在呈现消息。
<h1>New Icon</h1>
<%= form_for @icon do |f| %>
<% if @icon.errors.any? %>
<% @icon.errors.full_messages.each do |msg| %>
<%= msg %>
<% end %>
<% end %>
<%= f.label :icon %>
<%= f.file_field :icon %>
<%= f.submit%>
<% end %>
只打印了一个msg
,但视图显示的信息已打印两次。
答案 0 :(得分:0)
这只是一个疯狂的猜测,但我认为,你以某种方式设法两次验证相同的东西。 rails对他的验证并不是很聪明,所以把它放在你的模型中:
validates_presence_of :icon
validates_presence_of :icon
将生成2条相同的错误消息