变量部分变量

时间:2011-05-27 21:38:13

标签: ruby-on-rails variables partials

我看过其他帖子,但似乎无法弄清楚为什么这对我不起作用

在我的控制器中,我设置了

  @referrer=referrer.name

在我看来我有

  <%= render 'js', :referrer => @referrer >

然后在我的部分我把

   var type =' <%= referrer >';

我得到一个响应'未定义的局部变量或方法'referrer',它指向_js文件。

从我所看到的,这正是它应该如何写,我做错了什么?

2 个答案:

答案 0 :(得分:2)

<%= render :partial => "account", :locals => { :referrer => @referrer } %>

要在部分中使用的变量需要通过:locals hash传递。

参考:http://api.rubyonrails.org/classes/ActionView/Partials.html

修改

以下对我来说非常适合:

控制器:

  def index
    @referrer = "test"
  end

index.html.erb

<%= render :partial => "account", :locals => { :referrer => @referrer } %>

_account.html.erb

<%=referrer%>

答案 1 :(得分:0)

原因是部分原因是我不得不打电话

  var type='<%= @referrer %>'

不确定为什么我见过的所有其他文档都没有@符号