我是新來紅寶石軌道上。在軌道上的紅寶石渲染deosn't找到文件
在視圖/事件我有「_form.html.erb」,這是「new.html.erb」渲染這段代碼:
<%= render "form" %>
現在我想渲染「_form.html.erb 「位於同一文件夾(views/events)中的」index.html.erb「中。 但我得到錯誤「缺少模板」。
我想我有一些事情添加到控制器,請幫我渲染視圖其他頁面的形式...
我是新來紅寶石軌道上。在軌道上的紅寶石渲染deosn't找到文件
在視圖/事件我有「_form.html.erb」,這是「new.html.erb」渲染這段代碼:
<%= render "form" %>
現在我想渲染「_form.html.erb 「位於同一文件夾(views/events)中的」index.html.erb「中。 但我得到錯誤「缺少模板」。
我想我有一些事情添加到控制器,請幫我渲染視圖其他頁面的形式...
你「通常」不會在索引操作中呈現表單。大多數表單部分在語義上設置爲期望@my_resource
,但是如果你在做任何事情,那麼在索引操作期間你將不會有實例變量。有很多方法可以做到這一點,但這可能是最快的。
,你可能會有一些集合(讓你使用本本裝)索引中的作用:
#views/books/index.html.erb
<% @books.each do |book| %>
...
<%= render "form" %>
...
<% end %>
您可以只設置一個實例變量之前某處呈現形式:
#views/books/index.html.erb
<% @books.each do |book| %>
<% @book = book %>
...
<%= render "form" %>
...
<% end %>
做到這一點的另一種方式是通過傳遞一些當地人的部分。您必須將_form
中的所有引用都改爲使用本地變量。然後你可以這樣稱呼渲染:
<%= render :partial => "form", :locals => {:book => book } %>
您可以嘗試
<%= render "events/form" %>
我以前和這個有這個問題解決
謝謝,但它沒有奏效。 – 2012-07-23 23:00:46
對不起,您是對的。請檢查「/ events/form」而不是「events/form」,並告訴我是否有效。 – 2012-07-24 21:35:20
再次感謝enrique ...但仍ActionView ::模板::錯誤(未定義的方法錯誤爲零:NilClass): – 2012-07-24 21:39:33
這絕對*應該*工作。我們是否有關於錯誤信息的更多細節?它是否在索引頁面中完全相同,也是<%= render「形式」%>'? – Matchu 2012-07-22 04:09:21
它告訴它試圖找到部分的路徑嗎? – 2012-07-22 10:10:24
這是我的錯誤 ActionView :: Template :: Error(未定義的方法錯誤爲零:NilClass): – 2012-07-24 21:38:42