如何在form_for div之外呈现form_for错误消息?
这就是我现在所拥有的:
<div id="editUser_form", class="round">
<h1>Edit user</h1>
<%= form_for @user, :html => { :multipart => true } do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
...
<% end %>
</div>
但是,我希望它看起来更像这样:
<%= render 'shared/error_messages', :object => f.object %>
<div id="editUser_form", class="round">
<h1>Edit user</h1>
<%= form_for @user, :html => { :multipart => true } do |f| %>
...
<% end %>
</div>
上面的代码给出了一个错误,因为:object => f.object
必须是表单的一部分。有没有办法将f.object传递给shared / error_messages?
谢谢!
答案 0 :(得分:2)
对象是@user,所以你可以这样做:
<%= render 'shared/error_messages', :object => @user %>
定义@user的任何地方,只要partial不依赖于表单对象中的任何其他内容。
答案 1 :(得分:1)
f.object
只是作为form_for
的第一个参数传递的对象,所以:
<%= render 'shared/error_messages', :object => @user %>