0

首先,我没有使用 ActiveRecord 而是 Sequel,所以我无法使用很多像这样的助手build

我想要这样的东西:

model.children_models.each do |child_model|
  semantic_fields_for child_model do |f|
    f.input ...
  end
end

不幸的是,我遇到了两个问题:

  1. 输入字段都具有相同的名称,因此会相互覆盖。我已经通过手动做类似的事情semantic_fields_for "child_model[1]"并在控制器中处理这个问题来解决这个问题

  2. 我不知道如何修复子模型字段的内联表单错误。

有什么建议么?

4

1 回答 1

0

弄清楚了。

需要使用这个 Sequel 插件: 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 如何与表单交互有一些怪癖,但大多数都可以通过阅读来弄清楚。

于 2013-06-12T01:31:27.333 回答