多个类似before_filters的良好实践

时间:2013-06-16 19:47:13

标签: ruby-on-rails ruby-on-rails-3.2

我已经设置了一个使用devise作为身份验证系统的rails应用程序。我为不同类型的用户使用多态关联。现在我想添加一些before_filter来控制不同角色的访问权限。因此,我必须为每种用户定义一种方法,但是对于多种用户组合,应该允许一些方法。

目前我有3个不同的角色,如果我为每个可能的组合定义一个方法,我将不得不定义7个非常相似的方法。所以我想知道是否有任何优雅的方式来做到这一点。例如:

before_filter :allow_user1, only: [...]
before_filter :allow_user2, except: [...]

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

我使用cancan作为bronislav建议。

相关问题