I am trying to understand why model validation error reporting in Rails is so complicated compared to non ajax model validation. In my normal form I use <%= error_messages_for 'user' %> in my view and I get a nice error message displayed when the user inputs invalid information into the form. When I convert that form to use Ajax using form_remote_tag the error_messages_for no longer works ,because the page does not get reloaded. I have searched everywhere for a simple elegant solution inline with DHH " beautiful code" line. In the code for Typo they partly solve the issue by calling this method when a begin & rescue trap is called: def render_error(object = '', status = 500) render(:text => (object.errors.full_messages.join(", ") rescue object.to_s), :status => status) end Throwing a 500 status error stops that annyoing "cannot find template" message. This just renders text to the browser. Not very nice really. I want the SAME form as the error_messages_for gives. There should be a better solutions to this to give comminality to error messages across an application. I have tried using a helper method passing into it the object but that does not seem to work. Help!
on 2006-05-02 22:21