Rails 4&cocoon gem:无法添加3级孩子动态添加2级孩子

我目前正在使用cocoon gem来处理我的嵌套表单以及bootstrap / simple_form。 我的模型布局如下:

  • 联系has_many目标
  • 目标有很多任务
  • 一个任务has_one提醒(尚未实现,一旦我解决了这个问题,这是下一个)

我的表单布局正确构建了目标字段,我可以毫无问题地添加/删除任务到我的第一个目标。 但是,当我动态添加另一个目标时(无论是在新的还是编辑操作中),我都无法向其添加/删除任务(如果我点击“添加任务”,它只会添加到我的第一个目标中)。 以下是我的表格:

_form.html.erb

   

prohibited this contact from being saved:

Goals:

goal %>

_goal_fields.html.erb

 

Tasks:

task %>

task_fields.html.erb

 

我已经完成了我的代码,以确保我使用正确的div类和ID,但我确定我的表单在某处有问题。 我还为simple_form / bootstrap添加了必要的包装选项。 提前感谢您抽出宝贵时间帮助我。

这听起来像一个HTML / JavaScript问题。 我刚刚在cocoon问题上发布了类似的问题,所以听起来像是使用id而不是类来重复这个问题。

不确定是否会导致问题,但我发现你有一个

虽然在这种情况下我期望的行为是,它显然有效,但它只会保存在第一个。 不完全是你所描述的。

其次:是否有意为每个孩子设置“添加任务”或“添加目标”?

我会写这些循环如下:

 <%= f.simple_fields_for(:tasks) do |task| %> <%= render 'task_fields', :f => task %> <% end %>  

[咆哮]我应该再尝试推广haml吗? 我看到人们在使用erb时犯了很多错误,它只是变得混乱(你的缩进很混乱),我有时候真的不明白为什么更多人使用haml或slim。 我发现它使我的观点更具可读性。 [/咆哮]