¿Es posible en Rails comprobar si ya se ha emitido un redireccionamiento o renderizado?

Ruby 2.0.2, Rails 4.0.3, Conjuro 0.8.5

Traté de emitir una redirección en mi código, solo para recibir el mensaje de error de que ya se había emitido una redirección o representación. Si ese es el caso, estoy feliz de volver. Sin embargo, si se llama al método por cualquier otro motivo, me gustaría comprobar si se ha emitido un redireccionamiento o renderizado y, si no, emitirlo. El código es autenticación basada en hechicería.

En el controlador de la aplicación, tengo:

  def not_authenticated
    redirect_to login_url # , :alert => "First log in to view this page."
  end

Esto termina comprobando current_user, de la siguiente manera:

  def current_user
    @current_user ||= @view.current_user unless @view.blank?
    begin
      @current_user ||= Associate.find(session[:user_id]) unless session[:user_id].blank?
    rescue ActiveRecord::RecordNotFound => e
      return
    end
    current_user = @current_user
  end

En el rescate, me gustaría determinar si ya se produjo una redirección o renderización, para poder redirigir_a login_url si no. Esto significaría, por supuesto, que se llamó desde un método diferente, que es. Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta