使用nested_form时,我可以使用不同的工作流程吗?

时间:2013-11-12 16:52:49

标签: ruby-on-rails gem nested-forms

我正在使用Ryan Bates的gem nested_form。我对用户的工作流程感到有点困惑。

我应该有一个“f.link_to_add”调用,它将为关联动态添加嵌套结构。这可以像宣传的那样工作,但我觉得用户首先点击“添加书籍”(如在常用的作者/书籍示例中)并在新书籍字段中输入那样很麻烦。

我希望最初显示一组空的Book字段,如果用户填写它们并单击Save,则会将其添加到作者。

我如何使用nested_form gem来实现这种情况?

THX

2 个答案:

答案 0 :(得分:1)

我建议您查看build。例如,您作者的new操作可能包含以下内容:

@author = Author.new
@author.books.build

请注意,如果一位作者只能拥有一本书而不是多本书,那么你可以这样做:

@author = Author.new
@author.build_book

答案 1 :(得分:0)

我认为简短的回答是nested_form不适合这个特定的工作流程。

使用单独的表单为关联类更容易实现,您在控制器中查找父类(作者),并在Book表单中保留一个隐藏字段(在此示例中为:author_id)。

仅当您可以接受逐个添加图书时才有效。

当您真的想要显示一长串图书并让用户可以在保存之前添加/删除多个项目时,Nested_form更合适。