Hi Craig,

On Wed, 2009-07-29 at 14:48 -0700, Craig White wrote:
> I am seeing some more differences between 1.2.x and 2.3.2 and they just
> baffle me.
> 
> def some_method
>   if params[:report][:salesmancode].to_s == '' || !
>     params[:report][:periodno]
>     flash[:message] = "You forgot to select an employee or pick a time
>     period"
>     redirect_to :back
>   else
>     blah, blah
      render :layout => false
>   end
> end
> 
> and I get a message about not being able to render/direct to more than 1
> time. Why doesn't 'redirect_to :back' simply end processing and redirect
> the user? Is there some better way of doing this now?

It is a little confusing but the short answer is don't count on render
and redirect statements executing immediately.  The best fix here is to
put your render :layout => false inside your else clause.  That way
there's no possibility of rendering twice.

HTH,
Bill


--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to