2
在我item
型號我也行has_many :user_items, validate: true
當item
得到確認,以驗證相關user_item
模型。驗證錯誤消息是這樣的:導軌 - 省略型號名稱從嵌套的驗證錯誤消息
>> @item.errors
=> ... @messages={:name=>["can't be blank"],
:description=>["can't be blank"],
:"user_items.picture"=>["can't be blank"],
:user_items=>["is invalid"]}>
>> @item.errors.full_messages
=> ["Name can't be blank",
"Description can't be blank",
"User items picture can't be blank",
"User items is invalid"]
_error_messages.html.erb
<% if target.errors.any? %>
<div id="error_explanation">
<div class="alert alert-danger">
The form contains <%= pluralize(target.errors.count, "error") %>.
</div>
<ul>
<% target.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
的項目不顯示的項目名稱錯誤消息。例如,錯誤消息不顯示「項目描述不能爲空」,它只顯示「描述不能爲空」。我該如何做到這一點,所以用戶項目的錯誤消息以相同的方式省略了模型名稱,例如「圖片不能爲空」而不是「用戶項目圖片不能爲空」?