我有设计用户和管理员的单独模型。我也使用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