【发布时间】:2012-12-14 04:47:18
【问题描述】:
我正在开发一个应用程序,公司管理员应该能够在其公司中创建和更新用户。 (用户也可以独立创建和更新他们的帐户)。
我使用 Devise 和 Cancan 进行注册和权限管理。我配置了 Devise 以获得所需的注册和用户更新流程。我为管理视图创建了一个命名空间。
我的管理控制器 (/app/controllers/admin/base_controller.rb) 如下所示:
class Admin::BaseController < ApplicationController
authorize_resource :class => false
layout 'admin'
def dashboard
end
end
除了我的“常规”users_controller 之外,我还有一个控制器 (/app/controllers/admin/users_controller.rb) 和专用于管理员用户管理的相关视图。
class Admin::UsersController < Admin::BaseController
...
end
现在,实现与设计相关的用户管理功能(此时,创建和更新用户)最简洁的方法是什么?
在我的“常规”registrations_controller 和confirms_controller 中有条件(基于用户权限)来呈现和重定向不同的视图? (参见Devise form within a different controller)
或者在我的管理命名空间中创建新的控制器?如果最新的更好,主要的步骤是什么?
【问题讨论】:
标签: ruby-on-rails-3 devise cancan