我有一個視圖,顯示多個圖像和這些圖像的相關標籤。我決定對每個圖像及其標籤使用局部視圖,但我無法將圖像對象傳入局部視圖。這裏是主視圖中的相關代碼:將參數傳遞到局部視圖
<table>
<% @images.each do |i| %>
<tr>
<%= render :partial => :image_tag, :image => i %>
</tr>
<% end %>
</table>
下面是部分視圖的相關代碼(局部視圖名爲_image_tag.html.erb):
<table>
<%= image.id %>
<%= image_tag image.src %>
</table>
我this線程讀取,我可以通過在圖像對象中,我正在執行它的方式。我嘗試通過渲染方法上的選項散列傳遞id,並且也沒有工作。我得到的錯誤是:
undefined method `model_name' for Symbol:Class
以我要求的線爲中心渲染:局部在主視圖中。
我實際上已經有了,並且正在得到與我目前相同的錯誤。還有其他問題導致了這個問題? – jnevelson
我的猜測是「image_tag」是一個軌道輔助方法,並與您的部分名稱相沖突。你嘗試重命名你的部分? –
考慮到上下文的公平點,但我只在問題中加入'圖像'以保持簡單。我的實際代碼命名不同,所以這不是問題。 – jnevelson