我正在使用Devise在具有多个域名的网站上进行身份验证,并且我想限制用户按域名登录。我将允许的域保存在我的用户模型中。
通常
可以轻松处理def active_for_authentication?
super and self.is_domain_allowed?
end
挑战在于,此功能将在模型中使用,并且模型无法访问仅在控制器中可用的当前域request.domain
。我已经研究了覆盖Devise::SessionsController
的问题,但似乎唯一的选择是允许登录然后立即注销该人,这不是一个干净的解决方案。
Rails 4.2.6
Devise 3.5.10
建议?