Je ne suis pas sûr de ce que la meilleure façon, mais d'une certaine façon, je suis en train de me mélanger moi-même. Ce que j'essaie de faire est un moyen pour un administrateur d'entrer dans un profil d'utilisateur et de modifier des éléments.Rails concevoir ajouter le routage de gestion
Route
devise_for :customers, :controllers => {:registrations => 'registrations'}
resources :usermanagements
Contrôleur
class RegistrationsController < Devise::RegistrationsController
def update
# required for settings form to submit when password is left blank
@customer = Customer.find(current_customer.id)
if @customer.update_attributes(params[:customer])
set_flash_message :notice, :updated
# Sign in the customer bypassing validation in case his password changed
sign_in @customer, :bypass => true
redirect_to after_update_path_for(@customer)
else
render "edit"
end
end
def edit
@customer = current_customer
end
end
Contrôleur
class UsermanagementsController < ApplicationController
def index
@usermngmts = Customer.paginate(:page => params[:page], :per_page => 30)
end
def show
@usermngmts = Customer.find(params[:id])
end
end
inscription Vues/edit.html.erb
# i am trying to designate this one for public view
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
...
<% end %>
Cela fonctionne
Vues usermanagements/index.html.erb
<% @usermngmts.each do |usrmngmt| %>
<%= usrmngmt.incomplete_name %>
<%= link_to ... i would like to go to the edit of usermanagement controller but get usermngents/userid/edit %>
</div>
<% end%>
la meilleure approche pour ne pas mélanger ces deux contrôleurs