Rails Dynamic Form Fields& AJAX提交

时间:2011-10-09 16:56:15

标签: ruby-on-rails ajax forms ruby-on-rails-3.1

我有一个Ruby on Rails应用程序,它有一个带有嵌套属性的表单。此表单允许使用一些javascript动态添加字段。该表单还通过AJAX提交模糊。

除了一个以动态添加字段为中心的问题外,一切都运行良好。

通过Javascript添加动态字段时,会为其分配唯一ID。但是,表单字段的ID和模式显然与保存字段后rails生成的名称不匹配。

由于AJAX表单提交,每次更改表单时,动态添加的字段都会创建一个新的DB条目。

我需要找到一种方法来优雅地处理这样一个事实:我需要在AJAX提交后检索生成的rails并修改/替换页面上的那个 - 否则新字段将继续复制!

您可以在以下位置查看我的代码:https://github.com/michaelward82/WeddingPlanner/tree/UI

(道歉,如果我的Rails代码不是最干净的,这是我在真正的rails项目上的第一次真正的尝试,我仍在学习模式)

1 个答案:

答案 0 :(得分:1)

我认为您遗失的是:dependent => :delete_all关联中的belongs_to参数。这使得Rails在保存新集时删除旧的预算项目:

# budget_item.rb
belongs_to :budget, :dependent => :delete_all