Nat*_*han 4 forms ruby-on-rails associations nested-attributes
我可能完全混淆了两者,但我发现这些表单可以使用基于嵌套路由的数组参数来促进关联,例如:
<%= form_for [@project, @task]...
Run Code Online (Sandbox Code Playgroud)
或者fields_for如果父类accepts_nested_nested_attributes_for是孩子,则使用帮助器.
这些方法之间的区别/权衡是什么?
我没有发现答案是如我所希望的那样清晰,所以在做了一些研究后我发现了一个让我感到满意的答案,所以我想我会和别人分享.
嵌套路线接近
基本上,当您将子模型的表单作为单独的表单呈现时,嵌套路径方法很有用.换句话说,如果你的博客上有一个带有评论模型的Post模型作为它的孩子,你可以使用嵌套的路径来呈现孩子的表单,这样提交该表单就会让rails在关联孩子方面发挥其魔力.与父母.
嵌套属性方法
另一方面,accepts_nested_attributes_for方法更适合用于呈现一个表单,该表单在呈现单个表单的外观时,实际上是多个表单与单个提交按钮合并在一起.
总而言之,嵌套路径方法以单一形式处理一个模型(尽管与父模型相关联),而嵌套属性方法以单个形式处理多个模型.
这种差异可能对新手来说很微妙,但有足够的意义可以理解.
希望这可以帮助那些对此有疑问的人.干杯.
| 归档时间: |
|
| 查看次数: |
515 次 |
| 最近记录: |