Jak przekazujemy parametry w redirect_to w szynach? Wiem, że możemy przekazać identyfikator za pomocą tego:
redirect_to :action => action_name,:id => 3
Jeśli chcę przekazać dodatkowe parametry, takie jak dane formularza, jak to osiągnąć?
EDYTOWAĆ:
W przypadku składni Ruby 2 musisz zaktualizować powyższy fragment, aby:
redirect_to action: action_name, id: 3
ruby-on-rails
markiv
źródło
źródło
Odpowiedzi:
Wystarczy dołączyć je do opcji:
Dałby
/thing/3/edit?something=else
źródło
Jeśli korzystasz z zasobów RESTful, możesz wykonać następujące czynności:
źródło
Jeśli masz jakieś dane formularza, na przykład wysłane do akcji # domu, teraz chcesz przekierować je do akcji # domu, zachowując parametry, możesz to zrobić
redirect_to act_house_path(request.parameters)
źródło
redirect_to act_house_path(request.parameters.merge(key: "value"))
redirect_to act_house_path(request.parameters.except(:authenticity_token, :controller, :action, :utf8, :commit)
Możesz przekazać dowolne obiekty do szablonu za pomocą parametru flash.
A następnie uzyskaj do nich dostęp w szablonie za pomocą skrótu.
źródło
źródło
źródło
Jeśli szukasz sposobu na przekazanie dodatkowych parametrów adresu URL (nie kontrolera, akcji, identyfikatora itp.), Oto niezawodna metoda:
To przekaże parametry utm lub inne dodatkowe parametry , których nie chcesz stracić.
źródło
trasy.rb
Każdy kontroler, który chcesz przekierować za pomocą parametrów, znajduje się poniżej:
źródło
Wytycz swoją ścieżkę, weź
params
i wróć:źródło