gpt4 book ai didi

ruby-on-rails - 使用嵌套路由与 accepts_nested_attributes_for 有什么区别?

转载 作者:行者123 更新时间:2023-12-04 23:06:46 25 4
gpt4 key购买 nike

我可能完全混淆了两者,但我看到表单可以使用基于嵌套路由的数组参数促进关联,例如:

<%= form_for [@project, @task]...

或使用 fields_for如果是父类的助手 accepts_nested_nested_attributes_for child 。

这些方法之间的区别/权衡是什么?

最佳答案

我发现给出的答案没有我希望的那么清楚,所以在做了更多的研究之后,我发现了一个让我满意的答案,所以我想我会与其他人分享。

嵌套路由方法

基本上,当您将子模型的表单作为单独的表单呈现时,嵌套路由方法很有用。换句话说,如果你有一个带有 Post 模型和 Comment 模型的博客作为它的 child ,你可以使用嵌套路由来为 child 呈现表单,这样提交表单会让 rails 在关联 child 方面发挥它的魔力与 parent 。

嵌套属性方法

另一方面,accepts_nested_attributes_for 方法更适合用于呈现一个表单,该表单虽然呈现单个表单的外观,但实际上是多个表单与单个提交按钮合并在一起。

总而言之,嵌套路由方法 以单一形式处理一个模型(尽管与父模型相关联),而 嵌套属性方法 以单一形式处理多个模型。

这种差异对新手来说可能很微妙,但足以理解。

希望这可以帮助其他对此有疑问的人。干杯。

关于ruby-on-rails - 使用嵌套路由与 accepts_nested_attributes_for 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10448945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com