我正在使用 Ryan Bates 的 gem nested_form。我对用户的工作流程有点困惑。
我应该有一个“f.link_to_add”调用,它将为关联动态添加一个嵌套结构。这和宣传的一样有效,但我觉得用户首先单击“添加书籍”(如常用的作者/书籍示例)然后在新的书籍字段中键入很麻烦。
我希望最初显示一组空的 Book 字段,如果用户填写它们并单击 Save,则会将它们添加到作者。
我将如何使用 nested_form gem 来实现这种情况?
谢谢
我正在使用 Ryan Bates 的 gem nested_form。我对用户的工作流程有点困惑。
我应该有一个“f.link_to_add”调用,它将为关联动态添加一个嵌套结构。这和宣传的一样有效,但我觉得用户首先单击“添加书籍”(如常用的作者/书籍示例)然后在新的书籍字段中键入很麻烦。
我希望最初显示一组空的 Book 字段,如果用户填写它们并单击 Save,则会将它们添加到作者。
我将如何使用 nested_form gem 来实现这种情况?
谢谢
我建议检查一下build
。例如,您new
对作者的操作可能类似于:
@author = Author.new
@author.books.build
请注意,如果作者只能拥有一本书而不是多本书,那么您可以这样做:
@author = Author.new
@author.build_book
我认为简短的回答是 nested_form 不适合这个特定的工作流程。
使用关联类的单独表单更容易实现,您在控制器中查找父类(作者)并在 Book 表单中保留隐藏字段(本例中为:author_id)。
仅当您可以接受一一添加书籍时,这才有效。
当您真的想显示一长串书籍并让用户在保存之前可以选择添加/删除多个项目时,Nested_form 更适合。