我正在使用Rails 3.0.20應用程序,我試圖通過局部變量傳遞局部變量,它顯示'未定義的局部變量'我已經看過在這個問題上的其他帖子,並不能解決它。Rails 3.0未定義局部變量呈現部分
這裏是我的電話,以使parital
= f.fields_for :current_positions do |builder|
= render :partial => 'current_position_fields', :locals => {:f => builder, :foo => 'hi'}
這裏是我的部分
%tr.pos_start
%td
= foo
= f.hidden_field :id, class: "pos_id"
= f.label :name, "Position Name"
%td= f.text_field :name
%tr.pos_loc
%td= f.label :location, "Position Location"
%td= f.text_field :location
%tr.pos_end
%td= f.label :year, "Position Year"
%td= f.text_field :year
%td.fields
= link_to_remove_fields "DEL", f
錯誤消息
undefined local variable or method `foo' for #<#<Class:0x00000008d4a050>:0x00000008d3c590>
如果我把= foo
出來的代碼一切工作。
你的確切用例是什麼,而不是'foo'指向一個字符串?它當前指向一個字符串,所以可能是'=「#{foo}」'? – kiddorails
我想爲hidden_field:id做一個唯一的引用,以便我可以通過下面的一些jquery來訪問它,以克服用戶在瀏覽器中點擊後退按鈕的錯誤。因此,不是'foo',我最終會傳遞一個計數器/索引,我將在循環中更新該部分,並將其附加到hidden_field:id的類名稱中,並在我的腳本調用下面。此刻,我想知道爲什麼我無法將簡單的字符串傳遞給部分。 – map7
您的'render'語法是完全正確的,afaik。剛剛在我的本地開發中投入了一筆,工作得很好。 – kiddorails