I have a special case(does not normally occur) render in a filter.
Because its in a filter, I can't end execution with a 'return' which
would work otherwise. Therefore I get this error:

Can only render or redirect once per action

My code in gist:

class MyController < ApplicationController
  before_filter :authenticate

  def priviledged_action
    redirect_to :action => "vip_room"
  end

protected
  def authenticate
    if params[:password] != "pass"
      render :status => 403,  :text => "Access denied"
      # Things I have tried to end execution here:
      # 'return' does end execution as simply returns filter
      # 'exit' causes crash
      # I can't think of a way to use catch/throw
    end
  end
end

Can anyone please advise?
-- 
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to