【发布时间】:2014-02-19 07:31:45
【问题描述】:
有没有办法动态添加 X 个嵌套表单域?例如,如果我们有一个选择菜单:
选择菜单 -1 -2 -3 -4
用户选择3,然后创建3个嵌套表单域。
我看过 Railscast on Nested 模型表单,但对我来说,这已经创建了一组 fields_for,并且每次单击链接时都会简单地插入它们。我想在每次选择菜单更改时动态插入 X 数量。
以下是 Railscast 中的一些代码:
def link_to_add_fields(name, f, association)
new_object = f.object.send(association).klass.new
id = new_object.object_id
fields = f.fields_for(association, new_object, child_index: id) do |builder|
render(association.to_s.singularize + "_fields", f: builder)
end
link_to(name, '#', class: "add_fields", data: {id: id, fields: fields.gsub("\n", "")})
end
【问题讨论】:
-
你有答案吗?
-
@do_Ob 不,我没有弄清楚并继续前进。您是否尝试过以下答案中建议的
cocoon?显然version 1.2.2 增加了一键添加多个项目的功能
标签: ruby-on-rails-3 nested-forms