首先,我没有使用ActiveRecord而是使用续集,因此我无法使用build
这样的帮手。
我想要这样的事情:
model.children_models.each do |child_model|
semantic_fields_for child_model do |f|
f.input ...
end
end
不幸的是,我遇到了两个问题:
输入字段都具有相同的名称,因此会相互覆盖。我通过手动执行类似semantic_fields_for "child_model[1]"
的操作并在控制器中处理此操作来解决这个问题
我不知道如何修复子模型字段的内联表单错误。
有什么建议吗?
答案 0 :(得分:0)
想出来。
需要使用此续集插件: http://sequel.rubyforge.org/rdoc-plugins/classes/Sequel/Plugins/NestedAttributes.html
plugin :nested_attributes
nested_attributes :children_models
然后就这样做:
model.children_models.each do |child_model|
semantic_fields_for :children_models, child_model do |f|
f.input ...
end
end
关于Sequel如何与表单进行交互有一些怪癖,但大多数都可以从阅读中找到。