CanCan可以跳过某些动作的授权认证。

5

我遇到了一个CanCan gem的问题,无法解决。在我的控制器中,我有一个名为“confirm”的操作,它是“reservations”资源的成员路由。我不想在这个操作中通过CanCan对资源进行授权,所以我在控制器中做了以下操作:

load_and_authorize_resource except: :confirm

但是现在我遇到了错误:
This action failed the check_authorization because it does not authorize_resource. Add skip_authorization_check to bypass this check.

如何在 CanCan 中跳过授权以进行适当的操作?
2个回答

10
我认为以下控制器代码可能适用于您的情况:
skip_authorization_check only: :confirm
load_and_authorize_resource except: :confirm

希望这能帮到你!

是的,那就是答案 :) - Mateusz Urbański

0
对我来说,使用cancancan很简单,只需要替换这个。
load_and_authorize_resource

使用这个

load_and_authorize_resource except: :webhook

然后 /webhook 的 URL 在未经授权的情况下就可以工作了


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接