2012-08-24 12 views
5

Proste pytanie - jak uzyskać ścieżkę lub pełny adres URL bieżącej akcji, WRAZ Z ciągiem zapytania?Uzyskaj bieżącą ścieżkę działania/adres URL zawierający ciąg zapytania? (Rails)

życzę, aby zapisać go do zmiennej sesji tak:

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

    session[:some_var] = current_url 

    ... 
end 

W tej chwili robię następujące, ale wydaje się nieco brutalne (w szczególności określające ciąg kwerendy params indywidualnie):

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

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

    ... 
end 

Odpowiedz

12

request.url to prawdopodobnie to, czego szukasz.

+5

'request.fullpath' również poda ci względną ścieżkę + ciąg zapytania, bez protokołu lub domeny. – gmcnaughton

1

dostęp params zmienna, da kwerendy jak controller i action. Korzystając z obiektu request, możesz kopać głębiej, jeśli chcesz.

Powiązane problemy