我已经设置了一个使用devise作为身份验证系统的rails应用程序。我为不同类型的用户使用多态关联。现在我想添加一些before_filter
来控制不同角色的访问权限。因此,我必须为每种用户定义一种方法,但是对于多种用户组合,应该允许一些方法。
目前我有3个不同的角色,如果我为每个可能的组合定义一个方法,我将不得不定义7个非常相似的方法。所以我想知道是否有任何优雅的方式来做到这一点。例如:
before_filter :allow_user1, only: [...]
before_filter :allow_user2, except: [...]