Tôi đang cố gắng thay đổi tuyến đường ray từ/người dùng/1 thành/tên người dùng. Tôi hiện đang thiết lập để nó hoạt động cho các hành động hiển thị và chỉnh sửa. Vấn đề thực tế là khi tôi đi để cập nhật người dùng bằng cách sử dụng:Đường ray đến tên người dùng thay vì id
<%= form_for @user do |f|%>
Nó không bao giờ cập nhật, vì hành động cập nhật được chuyển đến/người dùng /: id. Có cách nào để tuyến đường này để nó hoạt động cho/tên người dùng? (đó là tuyến đường được hiển thị trong biểu mẫu của tôi dưới dạng hành động). Tôi đã gãi đầu của tôi trong một thời gian này.
CHỈNH SỬA:
Vấn đề không định tuyến cho tên người dùng, nó hoạt động chính xác. Vấn đề là biểu mẫu định tuyến đến/tên người dùng để cập nhật, tuy nhiên tuyến đường cập nhật cho người dùng vẫn là/users /: id thay vì:/id.
tôi đã cố gắng cập nhật các tuyến đường của tôi với điều này, nhưng không có kết quả:
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! Đây cố định vấn đề:
match '/:id', :to => "users#show", :as => :user, :via => :get
nó sẽ được tốt hơn để xác định 'param:: username' trong các tuyến đường f ile? Vì param không nên được gọi là ': id' nữa, nhưng thay vào đó nó sẽ được gọi là': username' –