Rails:CanCanCan可以限制资源创建的数量

时间:2016-08-10 17:26:56

标签: ruby-on-rails authorization cancancan

我在我的rails应用程序中使用CanCanCan gem。我想根据用户订阅计划限制franquicia_id创建的数量。例如拥有page计划的用户最多只能创建10个页面。我怎样才能实现它?我试图通过使用以下规则来引入限制:

basic

但是一旦我的页码超过10,它就会阻止访问can :create, :pages if user.subscription_plan == "basic" && Page.count <= 10控制器上的每个控制器。我在pages控制器上使用了以下代码。

pages

如何最好地达到我所需要的效果?

1 个答案:

答案 0 :(得分:0)

为控制器中的每个操作触发您之前的操作。将其限制为“创建”操作:

before_action :authorize_user, only: :create