On 26 Oct 2008, at 12:33, Cory Wilkerson wrote:
> > Folks, > > Curious what the current state of the union is with regard to > 'failure' > idioms for an AJAX call in 2.0 land. > > For example, let's say I have a simple form_remote_for that posts to > session_controller.rb that validates user credentials and, upon > successful validation, redirects that use to some landing page. That's > the happy path - now wondering what to do if the validation fails: > > * Return some sort of internal xml that indicates things have failed > using respond_to? and parse the XML/update the page accordingly? > Well in a case like this i don't think you need anything smart. In the successful case you page.redirect_to somewhere, in the failure case you page.replace_html or page.insert to add an appropriate error message somewhere. In the case where the client side code has more smarts things are a little different. Personally I use the X-JSON header quite a lot to convey meta data to the client and use RJS very little, ie the body of the response is nearly always a chunk of HTML or JSON, the json contain in the X-JSON header lets the client side code know what to do with it. > * Set the http response code to something in the 4XX range - invoke a > failure callback? > That can also be appropriate, although I would save that for actual errors (eg I couldn't talk to some server) rather than for something like a failed validation. You can use Ajax reponders if you just want a generic something bad action (eg show a message to the user). Fred > * Something else I'm not thinking of entirely? > > Haven't been near this in a while and was wondering what the current > practice du jour is... > > Thanks for any help/insight, > CW > -- > Posted via http://www.ruby-forum.com/. > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

