我花了一段时间,试图找出授权控制器的最佳方法,该控制器来自于CanCan的宝石.我专门使用
Comfortable Mexican Sofa.我有所有设置与Devise和CanCan,但无法从Comfy中授权特定的控制器.最近我可以找到类似于我后来的事情是在
Fortress CMS gem.
我已经尝试使用初始化器和引擎来扩展before_action并且编写一个简单的auth方法. CanCan和Comfy唯一可以找到的是here,但它只是针对网站登录,而不是特定的控制器,如页面,博客等.
基本上,它会降低 – 我如何能够扩展一个gem控制器,以便我可以专门为该控制器验证一个用户?
解决方法
在
initializer,您可以自定义您自己的授权逻辑:
# Uncomment this module and `config.public_authorization` above to use custom public authorization module ComfyPublicAuthorization def authorize # TODO: your own authorization logic. Check params variable here true end end