gpt4 book ai didi

javascript - Rails 3 插件 nested_form 与 JavaScript 方法在嵌套表单中动态添加表单字段

转载 作者:行者123 更新时间:2023-11-30 18:42:39 25 4
gpt4 key购买 nike

我正在研究如何为嵌套模型动态添加表单字段,并偶然发现了 nested_form ryanb 的插件。毫无疑问,这是一段很棒的代码,但我想知道为什么它必须如此复杂?

示例:用于创建/添加项目的表单分配了一个或多个任务。用户可以通过单击添加任务按钮来动态添加更多任务。一个项目必须至少有一项任务。每个任务都有一个名称和描述。

那么为什么不只是:- 生成 html 时,将每组任务字段包围在一个给定 ID(例如“dynamic_fields”)的 div 中- 当用户单击添加任务按钮时,通过 link_to_function 调用 JavaScript 函数来克隆 dynamic_fields 子树。在任务列表的底部插入一组新字段。- 通过 JavaScript,删除新添加字段的值,并将子 ID 替换为唯一的值(Ryan 建议使用基于当前时间的值)

我知道 nested_forms 插件也适用于更深层次的嵌套结构,但鉴于我的简单用例只有一层层次结构,上面概述的方法是否可行?还是我错过了一些重要的东西?对此主题的任何指导表示赞赏。

最佳答案

基本上,该插件按照您的描述工作,但使用部分表单作为基础。嵌套对象的 ID 必须是唯一的,坚持当前的毫秒时间确实很容易做到这一点。

您处理问题的方法可行,但需要一些额外的 html 来捕获表单的必需部分并匹配属于哪个附加对象的内容。

Ryan Bate 的代码看似复杂,其实不然。它引入复杂的方法只是为了让您的 View 看起来不错。

我认为这个问题还有另一种解决方案,一个名为 cocoon 的 gem。

关于javascript - Rails 3 插件 nested_form 与 JavaScript 方法在嵌套表单中动态添加表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6411778/

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