2010-06-10 27 views
17

Dostaję błąd, że nie można dowiedzieć się:Szyny wiadomość: actionView :: MissingTemplate

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

ja „wzmocnienie” Kod inni i jestem po konwencję Założyli, gdzie mają mieć kod jak :

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

i plik o nazwie _other_stuff.html.erb i to wszystko działa, ale kiedy skopiować te małe fragmenty, otrzymuję powyższy błąd. Jakieś pomysły? Coś tu się dzieje, że muszę to rozgryźć.

Odpowiedz

26

Okazuje się, że nie mają

render :something

w moim metody kontrolera, więc myślę Szyny zorientowali, że nie musi być „delete_stuff.erb” gdzieś wiedzieć, co robić. Dodano render i komunikat o błędzie zniknął.

4

będzie szukać szablonów/części w bieżącym folderze widoków kontrolerów, chyba że ścieżka podglądu została zmieniona w kontrolerze - możesz prepend and append różnych ścieżek widoku, aby najpierw spróbować dopasować. Ponieważ wspomniałeś w szczególności o aspektach częściowych, zapoznaj się z dokumentacją na stronie partials.

Czy masz plik _delete_stuff.html.erb w katalogu views/cluster? Jeśli nie, to gdzie jest _delete_stuff.html.erb? Jeśli nie znajduje się w tym samym katalogu, będziesz musiał zadzwonić pod numer render :partial => 'other_directory/delete_stuff', aby pojawił się częściowy.

+0

Tak, mam plik _delete_stuff.html.erb w katalogu views/cluster. Zmieniłem go na delete_stuff.erb i oczywiście ten błąd zniknął i pojawił się kolejny. Również wtedy było inaczej niż wszystkie inne podobne fragmenty widoków, które skopiowałem. – rtfminc

+0

Jakiego błędu dostałeś teraz? – theIV

Powiązane problemy