views:

95

answers:

2

I am getting an error that I cannot figure out:

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

I am "enhancing" others code and am following the convention they set up, where they have have code like:

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

And a file named _other_stuff.html.erb and it all works, but when I copy these little snippets, I get the above error. Any ideas? Something is going on here that I need to figure out.

A: 

ActionView will look for templates/partials in the current controllers view folder, unless its view path has been changed in the controller—you can prepend and append different view paths for it to try and match first. Since you mention partials specifically, have a look at the documentation on partials.

Do you have a _delete_stuff.html.erb file in your views/cluster directory? If not, where is the _delete_stuff.html.erb partial? If it's not in the same directory, you will have to call render :partial => 'other_directory/delete_stuff' for your partial to appear.

theIV
Yes, I have a _delete_stuff.html.erb file in the views/cluster directory. I changed it to delete_stuff.erb and of course that error disappeared and another one appeared. It also then was different then all other similar view snippets that I copied from.
rtfminc
What kind of error are you getting now?
theIV
A: 

Turns out that I did not have a

render :something

in my controller method, so I guess Rails figured that there must be a "delete_stuff.erb" somewhere to know what to do. Added a render and the error message goes away.

rtfminc