在我的控制器创建方法中,我使用accept_nested_attributes 创建一个父对象和子对象。这一切都很好。
孩子有一个正确设置的排序属性。
但是,当验证失败时(例如缺少属性),当 fields_for 方法运行时,不会保留子对象的顺序。
我试过使用 parent.children.reorder("ordering ASC") 但这不起作用......
如果它使事情更清楚,我很乐意发布任何代码!
def create
@parent = Parent.new(params[:parent])
respond_to do |format|
if @parent.save
format.html
else
@parent.children.reorder("ordering ASC") #this makes no difference
format.html { render :action => "new" }
end
end
end
并以部分的形式
<%= f.fields_for :children do |ff| %>
<%= render "child_fields", :ff => ff %>
<% end %>
任何指针都会很棒..