Próbuję zmienić trasy szyn z/users/1 na/username. W tej chwili ustawiam to tak, aby działał na potrzeby pokazywania i edycji. Rzeczywisty problem jest to, że kiedy idę do aktualizacji użytkownika za pomocą:Routing trasy do nazwy użytkownika zamiast id
<%= form_for @user do |f|%>
nigdy nie aktualizacji, ponieważ działanie aktualizacja jest kierowany do użytkowników//: id. Czy istnieje sposób na przekierowanie go tak, aby działał na/username? (która jest trasą renderującą w moich formularzach jako działanie). Od pewnego czasu drapałem się po tej głowie.
EDIT:
Kwestia nie jest routing do nazwy użytkownika, że działa poprawnie. Problem polega na tym, że formularz prowadzi do/username for update, jednak trasa aktualizacji dla użytkowników to nadal/users /: id zamiast:/id.
Próbowałem aktualizacji moich trasy do tego, ale bezskutecznie:
match '/:id', :to => "users#show", :as => :user
match '/:id', :to => "users#update", :as => :user, :via => :put
match '/:id', :to => "users#destroy", :as => :user, :via => :delete
EDIT:
Doh! To naprawić problem:
match '/:id', :to => "users#show", :as => :user, :via => :get
byłoby lepiej, aby określić 'param:: username' w trasach f ile? Ponieważ param nie powinien już być nazywany ': id', ale zamiast tego powinien być nazywany': username' –