2010-10-07 48 views
12

我在Rails 3應用程序中實現了Devise,我需要管理員用戶才能管理用戶。用戶不可註冊,因此管理員必須創建帳戶。什麼是最好的方式去做這件事?使用Rails 3和Devise管理用戶帳戶

當Devise已經提供Devise::RegistrationController但我沒有看到任何其他選項時,創建我自己的UsersController似乎不太乾。

回答

13

我選擇創建我自己的UsersController沿着RegistrationController一邊。爲管理目的設置自己的RESTful控制器真的很有意義。管理用戶記錄和維護與它們相關的管理字段不是設計人員的工作。畢竟,它是一個認證框架。讓它做它設計的東西似乎是正確的。出於某種原因,您需要創建自己的用戶模型。

2

您可以重寫RegistrationController以提供所需的功能。檢查從這裏的第一個答案: Override devise registrations controller

+0

還沒有測試過這個,但是你可以重寫RegistrationController並簡單地在其中放入一個before_filter來確保管理員發出請求。 – pushmatrix 2010-10-08 01:22:17

+0

我現在實際上有我自己的註冊控制器來進行授權。我的問題是,當作爲另一個用戶調用sign_up時,您立即以該用戶的身份登錄(例如它是用戶註冊)。如果我要創建所有自己的方法,我想我寧願擁有自己的UsersController – 2010-10-08 12:30:25

相關問題