Ruby on rails 如何从Rails中的嵌套表单记录返回列值(记录ID)?

Ruby on rails 如何从Rails中的嵌套表单记录返回列值(记录ID)?,ruby-on-rails,nested-forms,Ruby On Rails,Nested Forms,我在Rails 3.1应用程序中有一个嵌套表单,使用Cocoon gem 在子窗体中,我有一个链接,单击该链接时,应该返回子窗体的id并将其传递给javascript函数 <%= form_for @parent do |f| %> parent fields... <%= f.fields_for :child do |child| %> <%= link "run function", 'string-to-pass' => "#

我在Rails 3.1应用程序中有一个嵌套表单,使用Cocoon gem

在子窗体中,我有一个链接,单击该链接时,应该返回子窗体的id并将其传递给javascript函数

<%= form_for @parent do |f| %>
    parent fields...
    <%= f.fields_for :child  do |child| %>
    <%= link "run function", 'string-to-pass' => "#{child.id}" %>   
    child fields...
    <% end %>
<% end %>

父字段。。。
“#{child.id}”%>
子字段。。。
从嵌套记录返回列变量的正确语法是什么

child.id
返回
未定义的局部变量或方法“child”

我可以在父控制器中定义@child变量,但如何将其指向子ID而不是父ID

我肯定我遗漏了一些简单的东西,但我看不出这两者是如何结合在一起的

感谢您对相关信息的任何建议或指点


谢谢

我建议做如下操作:
child.object.id

我还没有测试过,所以请让我知道它是否有效

编辑: 在我看来,我有这样的代码:

<%= f.fields_for :children do |child| %>
  <%= render "child_fields", :f => child %>
<% end %>
这是有效的

你能试着调整你的代码使之类似吗。我刚刚意识到,在你的领域里,你需要说:

<%= f.fields_for :children

我建议做如下操作:
child.object.id

我还没有测试过,所以请让我知道它是否有效

编辑: 在我看来,我有这样的代码:

<%= f.fields_for :children do |child| %>
  <%= render "child_fields", :f => child %>
<% end %>
这是有效的

你能试着调整你的代码使之类似吗。我刚刚意识到,在你的领域里,你需要说:

<%= f.fields_for :children

如果你想调用javascript函数,我真的不明白为什么你要在控制器中谈论@variables,但是无论如何。。。
我想您正在寻找带有以下代码的helper link_to_函数:

link_to_函数('link',“myJSFunction(#{child.id}”)”


这就是你的问题吗?

如果你想调用一个javascript函数,我真的不明白为什么你要在控制器中谈论@variables,但无论如何。。。 我想您正在寻找带有以下代码的helper link_to_函数:

link_to_函数('link',“myJSFunction(#{child.id}”)”


这是你的问题吗?

谢谢@adnan。它仍然返回未定义的局部变量或方法“child”
天哪,现在我觉得自己很愚蠢。我完全忘记/忽略了:f=>child.Doh!是的
f.object.attribute
现在工作得很好。谢谢,谢谢,谢谢。(字段中child的复数形式只是写问题时的一个错误,实际形式设置正确)。感谢@adnan。它仍然返回
未定义的局部变量或方法“child”
Gosh现在我觉得自己很愚蠢。我完全忘记了/忽略了:f=>child.Doh!是的
f.object.attribute
现在可以完美地工作了。谢谢,谢谢,谢谢。(将字段中的child复数化仅仅是写问题时的一个错误,实际形式设置正确)。感谢Aledalgrande,感谢您的帮助,但这不是我的问题。我使用javascript没有任何困难,也不需要调用javascript,但需要有child.id可供其他地方使用。我的问题是我无法返回child.id的值。也许我不理解嵌套表单是如何工作的。使用语法above-child.id-I获取
未定义的局部变量或方法“child”
谢谢Aledalgrande,感谢您的帮助,但这不是我的问题。我使用javascript没有任何困难,也不需要调用javascript,但需要有child.id可供其他地方使用。我的问题是我无法返回child.id的值。也许我不了解嵌套表单的工作方式。使用synta上面的x-child.id-我得到
未定义的局部变量或方法“child”