【问题标题】:Passing local variable into partial returns NameError将局部变量传递给部分返回 NameError
【发布时间】:2013-04-05 14:28:03
【问题描述】:

我正在尝试将某些东西的索引传递给一个部分并得到一个 NameError。

现在,这是我的渲染语句,我可以正常访问构建器。

<%= render 'my_partial', :builder => form_helper %>

但是当像下面这样添加索引时,我得到了错误。

<%= render 'my_partial', :builder => form_helper, :locals => {:index => index } %>

有什么想法吗? 谢谢!

编辑:

尝试中

<%= render :partial => 'my_partial', :locals => {:builder => form_helper, :index => index } %>

具体错误是“undefined local variable or method `index' for #”

【问题讨论】:

  • 错误真的出现在partial中吗?
  • index 是否在将其传递给部分视图的视图中定义?也许是@index

标签: ruby-on-rails ruby-on-rails-3 renderpartial partials


【解决方案1】:

要么:

 <%= render 'my_partial', :builder => form_helper, :index => index %>

或者:

<%= render :partial => 'my_partial', :locals => {:index => index, :builder => form_helper } %>

【讨论】:

  • 然后我应该能够通过在我的部分中写入''来访问索引?
  • 来自Ruby on Rails Guides:“另请注意,在传递:layout等附加选项时,需要明确指定:partial。”同样适用于传递:locals
  • 我正在尝试上面 apneadiving 帖子中的第二个选项,虽然构建器仍然可以正常工作,但它仍然显示未定义的局部变量或方法“索引”。索引只是一个整数有关系吗?
  • @apneadiving 我知道,我只是想添加对文档的引用。
  • 在我原来的描述中添加了措辞!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-07
  • 1970-01-01
  • 2012-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多