2012-08-24 20 views
5

Pregunta simple: ¿cómo obtengo la ruta o la URL completa de la acción actual INCLUYENDO la cadena de consulta?¿Obtener la ruta/url de la acción actual incluyendo la cadena de consulta? (Rails)

Deseo guardarlo en la variable de sesión, así:

def show 
    @thingy = Thingy.find(params[:id]) 

    session[:some_var] = current_url 

    ... 
end 

En el momento que estoy haciendo lo siguiente, pero parece un poco de mano dura (especialmente la especificación de cadena de consulta individual params):

def show 
    @thingy = Thingy.find(params[:id]) 

    session[:some_var] = thingy_path(@thingy, :q1 => params[:q1], :q2 => params[:q2]) 

    ... 
end 

Respuesta

12

request.url es probablemente lo que estás buscando.

+5

'request.fullpath' también le dará la ruta relativa + cadena de consulta, sin el protocolo o dominio. – gmcnaughton

1

acceso params variable, se le dará de la consulta así como controller y action. Al usar el objeto request puede cavar más profundo si lo desea.

Cuestiones relacionadas