2010-06-10 57 views
17

我得到我想不通的錯誤:Rails的消息:的ActionView :: MissingTemplate

ActionView::MissingTemplate (Missing template cluster/delete_stuff.erb in view path app/views) 
<...snip trace...> 
Rendering rescues/layout (internal_server_error) 

我「增強」別人的代碼和我跟隨他們成立了會議,他們在那裏有這樣的代碼:

<%= render :partial => "other_stuff" %> 

和一個名爲_other_stuff.html.erb和所有的工作文件,但是當我複製這些小片段,我得到上述錯誤。有任何想法嗎?這裏有一些事情我需要弄清楚。

回答

26

證明,我沒有一個

render :something

在我的控制器方法

,所以我想Rails的計算過,必須有一個「delete_stuff.erb」某處知道該怎麼辦。添加了一個渲染,錯誤消息消失。

4

ActionView將查找當前控制器視圖文件夾中的模板/部分,除非其控制器中的視圖路徑已更改 - 您可以使用prepend and append不同的視圖路徑首先進行嘗試和匹配。由於您特別提到partials,請查看partials上的文檔。

您的views/cluster目錄中是否有_delete_stuff.html.erb文件?如果不是,_delete_stuff.html.erb部分在哪裏?如果它不在同一目錄中,您將不得不打電話給render :partial => 'other_directory/delete_stuff'以便部分出現。

+0

是的,我在views/cluster目錄中有一個_delete_stuff.html.erb文件。我將它改爲delete_stuff.erb,當然這個錯誤消失了,另外一個出現了。它然後是不同的,然後我複製了所有其他類似的視圖片段。 – rtfminc 2010-06-11 00:54:13

+0

你現在得到什麼樣的錯誤? – theIV 2010-06-11 14:04:22