Controller method that doesn't require a view

I need to be able to write a controller method that does nothing to
the view. That is, when the method in the controller terminates, I
dont get an error in the browswer of:

Template is missing
Missing template blahbal/blahblah.erb in view path blah/views

The termination of the controller I must write does nothing to the
view (actually, I merely need to execute a little javascript, closing
some divs, etc). Is there a way to do this? Thanks, Janna B

Do like this

def my_method

DO whatever here

render :nothing => true

end

Sandip

That's too easy! Oh, yeah....now I remember why I was turned on by
Rails. Thanks!

Actually...it DOES render nothing (as it says!). This just leaves me
with a blank, white screen! I really need to have it DO nothing, and
really RENDER nothing....just return from the controller's method
without doing anything different to the view. -Janna B

Actually...it DOES render nothing (as it says!). This just leaves me
with a blank, white screen! I really need to have it DO nothing, and
really RENDER nothing....just return from the controller's method
without doing anything different to the view. -Janna B

I'm not entirely sure what you are after if render :nothing doesn't
fit. What are you expecting the http response to contain ?

Fred

I have a submit button on a form, which is in a div. When submitted,
an email is sent, the div closes, all else remains the same in the
view. Im just having a hard time in my mind fitting this into the
Rails MVC paradigm here. How can I do this? -Janna

I have a submit button on a form, which is in a div. When submitted,
an email is sent, the div closes, all else remains the same in the
view. Im just having a hard time in my mind fitting this into the
Rails MVC paradigm here. How can I do this? -Janna

so you should be doing an ajax form submit that renders some
javascript to close the div and so on.

Fred

<% form_remote_tag :update => 'dud', :url => {:action => 'the action'}
do%>

I just tried this and nothing complains if you try to update a
non-existent page element ('dud'), so that will work. The page with the
form remains with nothing changed, but the controller does process the
form.

You could even drop the :update option completely.

Fred

Although, the OP actually said "The termination of the controller I
must write does nothing to the view (actually, I merely need to
execute a little javascript, closing some divs, etc). "

Which seems self-contradictory, if you take view as being what the
end-user sees. If there are divs to be closed, or whatever, DOM
changes need to be effected.

So I think one or more callbacks (:success, :failure, :complete) are
needed to close/hide those divs, and perhaps some rendered javascript
from the request if what needs to be done depends on server state as a
result of the request.