我试图改变从/用户/ 1到/用户名的铁路路由。我现在设置这个,所以适用于显示和编辑的操作。实际的问题是,当我去通过更新用户:Rails路由到用户名,而不是id
<%= form_for @user do |f|%>
它从来没有更新,因为更新动作被路由到/用户/:ID。有没有什么办法可以让它适用于/ username? (这是在我的表单中呈现为行动的路线)。现在我一直在摸索这个问题。
编辑:
的问题不是路由到用户名,它正常工作。问题是表单路由到/更新的用户名,但用户的更新路由仍然是/ users /:id而不是:/ id。
我试图更新我的路线,这一点,但无济于事:
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
编辑:
卫生署!这解决了该问题:
match '/:id', :to => "users#show", :as => :user, :via => :get
它会更好用'PARAM:username'的路线˚F ILE?因为param不应该被称为':id',而应该被称为':username' –