我有設計用戶和管理員的單獨模型。我也使用Basecamp風格的子域名。除了一些控制器和操作,我需要能夠以用戶身份或管理員身份進行身份驗證之外,一切運行良好。設計與用戶或管理模型和Basecamp樣式子域名登錄
當前我有authenticate_user!在我的application_controller.rb中設置,我跳過skip_before_filter這些控制器和只有管理員應該有權訪問的操作。
不幸的是,我不能簡單地在每個控制器上指定驗證要求,因爲我仍然需要一些控制器和操作來由用戶或管理員訪問。
我已經嘗試了幾件事情無濟於事。看來,如果我移動authenticate_user!和authenticate_admin!成某種子域檢測邏輯,它無法處理。基本上是:
current_subdomain = request.subdomains.first
if current_subdomain == 'admin'
authenticate_admin!
else
authenticate_user!
end
我,在一個點上,能夠得到它試圖認證,但由於某種原因,它無法從需要這導致重定向循環(先爲我的認證,除了會話控制器紅寶石!)。
我意識到,我可以一個字段添加到我的用戶是管理員指地位,但應用程序需要用戶和管理員之間的權力比更大的分離將允許,除了少數控制器和動作。
- 的Ruby 1.9.2
- 的Rails 3.0.3
- 設計1.1.3
我也會這樣做。 – Shane 2011-01-06 16:00:34