2011-07-10 48 views
3

我現在有一個測試版的rails 3應用程序,它使用Devise進行用戶身份驗證,並且需要一些建議。我想添加一個具有一些額外功能的管理員用戶,但我將是唯一的管理員用戶(或管理員用戶可以通過終端創建 - 即人們無法註冊成爲管理員用戶)。所有普通用戶都具有相同的能力。我正準備使用康康來分離基於用戶角色的功能。然後,我想到使用康康可能只是矯枉過正。是否有意義,而不是創建一個不同的用戶類?我是否通過這樣做了任何事情?Rails 3建議:創建新的Admin User類或使用CanCan?

我可以預見,如果這個應用程序成功,可能會有不同的用戶角色(免費與付費帳戶等)。即使在這種情況下,通過設計沒有管理員用戶是否有意義?思考?

謝謝!

回答

2

如果你只有兩種類型(用戶和管理員),看起來很好,有兩個類。它可能比完整的角色系統更容易實施。但是,如果可以預見未來你會獲得更多的角色,那麼最好打下堅實的基礎並從一開始就使用角色系統。

+0

謝謝。我只是想確保我在正確的道路上:)。現在找到使用哪個實現!我會在這個上做一些試驗和錯誤,看看哪個最適合我的問題。 – panzhuli

2

如果您是唯一的管理員,我會在您的用戶模型中創建一個名爲Admin的字段,然後當您要添加僅適用於您的功能時,請使用admin?檢查你的代碼。

對於我的大部分項目,我一直在使用Devise,然後使用它們的Admin Role Wiki中的選項2,這非常容易實現。

+0

你知道,我想我可能會這樣。實際上兩種方式。使用cancan管理用戶類型,並通過設計管理該管理員完全獨立的角色 – panzhuli