CanCan 的accessible_by(获取记录)中的current_ability 是什么?

发布于 2024-09-12 06:21:55 字数 445 浏览 8 评论 0原文

在 CanCan 的文档中,它显示了如何以这种方式获取所有可访问的记录

@articles = Article.accessible_by(current_ability)

但是current_ability是什么?我尝试传递用于身份验证和授权的当前用户,但出现此错误:

NoMethodError: undefined method `conditions' for #<User:0x1092a3b90>

有什么想法应该传递给 accessible_by 或者这里出了什么问题吗?

In the documentation of CanCan it shows how to fetch all accessible records in this way:

@articles = Article.accessible_by(current_ability)

but what is current_ability? I've tried passing the current user which I'm using for authentication and authorization, but I've got this error:

NoMethodError: undefined method `conditions' for #<User:0x1092a3b90>

Any ideas what should I pass to accessible_by or what's wrong here?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

慢慢从新开始 2024-09-19 06:21:55

CanCan 使用 current_ability 方法(以及其他方法)扩展 ActionController::Base,这是您的 ApplicationController 应该继承的类。因此,您问题中的示例代码应该按原样工作。

CanCan extends ActionController::Base with the current_ability method (among others), which is the class that your ApplicationController should inherit from. So the example code in your question should work as is.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文