Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 4呈现部分(未定义的局部变量或方法)_Ruby On Rails_Ruby On Rails 4_Partials - Fatal编程技术网

Ruby on rails Rails 4呈现部分(未定义的局部变量或方法)

Ruby on rails Rails 4呈现部分(未定义的局部变量或方法),ruby-on-rails,ruby-on-rails-4,partials,Ruby On Rails,Ruby On Rails 4,Partials,我试图将两个局部变量传递给我的partial,但在partial中使用时,我得到了这个未定义的局部变量或方法“row” 渲染 <%= f.fields_for :menu_items do |builder| %> <%= render partial: 'menu_item_fields', locals: {f: builder, row: f.options[:child_index]} %> <% end %>` ` 局部的 <a href

我试图将两个局部变量传递给我的partial,但在partial中使用时,我得到了这个未定义的局部变量或方法“row”

渲染

<%= f.fields_for :menu_items do |builder| %>
<%= render partial: 'menu_item_fields', locals: {f: builder, row: f.options[:child_index]} %>
<% end %>`

`
局部的

<a href="#" data-target="item-<%= f.options[:child_index].to_s + "-" + row.to_s %>" class="item-field"><%= f.object.title %></a>

更改此代码

<a href="#" data-target="item-<%= f.options[:child_index].to_s + "-" + row.to_s %>" class="item-field"><%= f.object.title %></a>

详情如下:

<a href="#" data-target="item-<%= f.options[:child_index].to_s + '-' + row.to_s %>" class="item-field"><%= f.object.title %></a>

我认为应该是:

{ f: builder, row: builder.options[:child_index] }

哎呀,我在手机上误读了你的密码。如果不使用分部调用代码,代码是否正常工作?

p请提供出现错误的代码行?我是这样做的。它的标签是“Partial”,我正在使用嵌套属性,需要一个用于嵌套ItemsOrry的生成器,我只是有一个“duh”时刻。我的意思是说,因为:菜单项是一个集合,每次都呈现一个分部,因为它对集合中的每个项都执行一次。我将对此进行研究,但我仍然遇到相同的问题。我尝试过,我也尝试过这样做,但仍然会出现相同的错误。不过很好。如果是这样的话,我就没有理由一开始就通过这一行了。好吧,如果你只通过f怎么办?比如:家长形式:f。然后在部分调用父项形式中。选项[:子项索引]?同样的事情。它表示父表单未定义。当我有多个局部变量时就会出现问题通过局部变量传递多个值应该没有问题。您可以通过只传递parent\u form并再次调用parent\u form.options[:child\u index]来测试这一点。它仍然应该失败。