rails fields_for 在嵌套表单上验证错误后不呈现 [英] rails fields_for does not render after validation error on nested form
问题描述
我有一个嵌套表单问题.我实现了 railscasts 196 & 的嵌套表单解决方案.197. 如果我没有验证错误,它就可以工作.
因此,表单在加载时可以完美呈现,包括嵌套字段(在 fields_for 部分).
但是,表单有验证.当验证失败时,控制器会渲染 :new.然后表单可以正常呈现链接的模型字段,但不再呈现嵌套字段.有解决办法吗?
控制器
def new@property = Property.new@property.images.build结尾定义创建@property = Property.new(params[:property])如果@property.saveflash[:success] = t('Your_property') + ' ' + t('is_successfully_created')redirect_to myimmonatie_url别的渲染:动作=>'新的'结尾结尾
部分视图:
<% form_for :property, @property, :url =>{:动作=>"创建" }, :html =>{ :multipart =>真 } 做 |f|%><div id="new-property-form-spannedcols"><div class="formField inptRequired"><%= f.label :postal_code, t("Postal_code") %><%= f.text_field :postal_code, :class =>'inpt中短'%>
<div id="city_row" class="formField inptRequired"><%= f.label :city, t("City") %><div id="city_cell"><%=渲染:部分=>'ajax/城市', :locals =>{ :postal_code =>@property.postal_code } %>
...<% f.fields_for :images do |builder|%><div class="formField"><%= builder.label :photo, t("Photo_path_max_3mb") %><%= builder.file_field :photo, :class =>'输入中'%><%= builder.hidden_field :order, :value =>1"%>