Rich P.
2009-Nov-15 12:13 UTC
Problem creating Email form with redirect back if there are errors
Newbie here. I''m trying to create a simple e-mail form that validates
if the name & email have been entered, and if not, sends the user back
to the form with the previously entered data. The problem is I''m
losing the form parameters (param[:name], param[:address], param
[:message]), which means the user will have to re-enter them. What am
I not understanding?
def deliver_email
@errors = []
if params[:name].empty?
@errors << "Enter your name"
end
if params[:address].empty?
@errors << "Enter your e-mail address"
end
unless @errors.empty?
flash[:notice] = @errors
redirect_to (:action => ''compose_email'', :id =>
params[:id])
end
(send the email...)
end
Darian Shimy
2009-Nov-15 17:21 UTC
Re: Problem creating Email form with redirect back if there are errors
So there are a few ways to do this, but since you are a newbie, it might be
best to use a model, rather than parameters ("Rails way" vs. "You
could do
it like that"). To fully diagnose this issue, I need to see the view. My
guess is that you are not including the params in the view to populate the
form.
Darian Shimy
--
http:/www.darianshimy.com
http://twitter.com/dshimy
On Sun, Nov 15, 2009 at 4:13 AM, Rich P.
<rich.pav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
> Newbie here. I''m trying to create a simple e-mail form that
validates
> if the name & email have been entered, and if not, sends the user back
> to the form with the previously entered data. The problem is I''m
> losing the form parameters (param[:name], param[:address], param
> [:message]), which means the user will have to re-enter them. What am
> I not understanding?
>
> def deliver_email
> @errors = []
> if params[:name].empty?
> @errors << "Enter your name"
> end
> if params[:address].empty?
> @errors << "Enter your e-mail address"
> end
> unless @errors.empty?
> flash[:notice] = @errors
> redirect_to (:action => ''compose_email'', :id
=> params[:id])
> end
> (send the email...)
> end
>
>
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
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
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---