możesz chcieć utworzyć oddzielny kontroler dla tego zadania, ale może inni więc nadal korzystać users_controller
i po prostu sprawdzić, czy istnieje params[:id]
zestaw:
def edit
if params[:id]
@user = User.find(params[:id])
else
@user = current_user
end
end
Ale należy pamiętać, że /users
normalnie trasy działaniu index
i nie show
jeśli jeszcze trasę map.resources :users
. Ale można założyć inaczej zwaną trasą liczby pojedynczej na to:
map.resources :users
map.resource :profile, :controller => "users"
ten sposób /users
byłby listę wszystkich użytkowników, /users/:id
pokaże każdemu użytkownikowi i /profile
pokaże show
aktualnie zalogowanego w stronę użytkownika. Aby edytować swój profil, zadzwoniłbyś "/ profile/edit".
Wydaje mi się, że to nazwane zadanie route/controller. –
Czy możliwe jest rozwinięcie trochę tego, co przez to rozumiesz? dzięki! – Lowgain