# Best practices: form fails, now what

**URL:** <https://www.ruby-forum.com/t/best-practices-form-fails-now-what/87517>\
**Category:** Rails\
**Created:** [March 3, 2007, 9:36am UTC](https://www.ruby-forum.com/t/best-practices-form-fails-now-what/87517 "2007-03-03T09:36:22Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Faisal\_N\_Jawdat](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/34f0e0/32.png) [@Faisal\_N\_Jawdat](https://www.ruby-forum.com/u/Faisal_N_Jawdat)\
**Post date:** [March 3, 2007, 9:36am UTC](https://www.ruby-forum.com/t/best-practices-form-fails-now-what/87517/1 "2007-03-03T09:36:22Z")

</div>

Situation: A user submits a form. The inputs are in some way  
invalid. You present the original form.

Question: How do you present the original form as the user had it  
filled out (so they can correct it) rather than in its original state  
(requiring them to re-enter everything).

I have more or less hackish ways of doing this, but wondered how  
other people were doing it.

-faisal

---

<div class="post-metadata">

**Author:** ![Faisal\_N\_Jawdat](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/34f0e0/32.png) [@Faisal\_N\_Jawdat](https://www.ruby-forum.com/u/Faisal_N_Jawdat)\
**Post date:** [March 3, 2007, 12:09pm UTC](https://www.ruby-forum.com/t/best-practices-form-fails-now-what/87517/2 "2007-03-03T12:09:32Z")

</div>

It’s easiest if you post back to the same action that the form is in.  
Just make sure you set all the class variables. eg:

def login  
@user = params[:user] || User.new  
if request.post?  
#login, redirect  
end  
end
