I have a situation where a part of a page is under the control of periodically_call_remote() js helper. In response, the controller answers with a render(:partial ...). When the controller knows that nothing in the display has changed, I wish to respond with the equivalent of a '200 OK' response. How can I code that in the controller?
Hi,
I have a situation where a part of a page is under the control of periodically_call_remote() js helper. In response, the controller answers with a render(:partial ...).
I'm not sure I understand your explanation.
You say you're using periodically_call_remote which would lead me to expect that in your controller (assuming that's where you're responding), you'd be using
render :update do |page| page.replace_html (or some variation) ... end
But you say your controller 'answers with a render(:partial ...)
I'll take a stab below, but if that doesn't get it please post relevant code.
When the controller knows that nothing in the display has changed, I wish to respond with the equivalent of a '200 OK' response. How can I code that in the controller?
If you're returning html, you can just use head (in ActionController::Base)
return head(:success) render
I'm not sure how to return just a header with js cause I've never needed to do it, but the first thing I'd probably try would be:
render :js => ''
or
render :js => '', :status => :success
If for whatever reason those didn't work, I'd probably create an empty element on the page and...
render :update do |page| page.replace_html 'empty_element', '' end
HTH, Bill