cancan相关内容

CanCan:限制用户根据其角色设置某些模型属性的能力

我有一个 Post 模型,该模型具有:已发布的属性( boolean )和 User 模型,该模型具有 role 属性( string )。有三个角色: ROLES =%w [管理发布者作者] 我不希望用户扮演其角色是作者的人,可以设置,或编辑,即Post模型上的:已发布字段。 我正在使用CanCan(和RailsAdmin gem),简化后的Ability.rb文件如下所示: ..
发布时间:2020-09-29 01:43:47 其他开发

康康无障碍版

当我这样做时到底发生了什么? @ Patient.course_enrollments.accessible_by(current_ability) 发生的事情是我得到了course_enrollments,其中 course.client_id = user.client.id ,我只是不明白 accessible_by 的工作原理。 #skill.rb 可以: ..
发布时间:2020-09-29 01:43:41 其他开发

获取代表用户的CanCan功能的字符串

我想缓存Post视图,但是该视图取决于当前用户的权限(例如,如果current_user.can?(:edit, @post),我仅显示"edit"链接) 因此,我希望我的缓存键包括当前用户的CanCan能力的表示形式,以便我可以在用户能力发生变化时使缓存无效 SO:我如何获得一个表示当前用户能力的字符串,以便2个具有相同能力的不同用户将生成相同的“能力字符串"? 我已经尝试过u ..
发布时间:2020-09-14 03:53:15 其他开发

狂欢自定义角色权限

我正在尝试在狂欢特定权限内赋予一些自定义角色. 无法在任何地方找到这个答案 role_ability.rb class RoleAbility include CanCan::Ability def initialize(user) user || User.new # for guest if user.has_role? "admin" can :manage, ..
发布时间:2020-06-21 19:45:38 其他开发

具有AJAX的ActiveAdmin + CanCan + AASM事件切换器

作为管理员,我有一个特定的角色 我想查看并切换对象 的事件取决于我的角色 灵感来自 activeadmin_addons 及其枚举集成我想通过允许不同的管理员用户根据模型中特定事件/状态的能力/角色来更改事件,来为AASM提供类似的功能。 解决方案 从此处获取,请查看此链接以获取所需的其他文件 先决条件: 宝石:ActiveAdmin, 宝石“ ..
发布时间:2020-06-01 18:47:51 其他开发

使用主动管理员cancan进行范围界定

我如何在活动的管理员&中使用作用域可以可以。 我有管理员用户&那些与机构 有(has_one)关系,机构有很多配置文件 现在,当管理员用户登录时,我要显示具有相同机构的所有配置文件。 找不到以下链接很有帮助。 http://activeadmin.info/docs/2-resource-customization.html#scoping_the_queries 解决方案 ..
发布时间:2020-06-01 18:47:33 其他开发

具有CanCanAdapter的ActiveAdmin导致仪表板上的无限重定向

在ActiveAdmin 0.6.0中使用CanCan适配器时。我有资源在工作,授权正在工作。但是,当我进入 / admin 的根ActiveAdmin页面时,它将重定向到 / admin 并永远继续下去。 解决方案 如果用户无权访问页面,则ActiveAdmin将重定向到仪表板。如果用户无权访问仪表板,则会导致无限重定向。 解决方案是使用户能够读取仪表板页面。将其放置在能力模型对象 ..
发布时间:2020-06-01 18:45:27 其他开发

使用角色和小组模型在更复杂的环境中定义能力

在我的Rails应用程序中(我使用devise和cancan),每个(注册)用户完全属于 一个角色(“管理员"或“用户"),但至少属于 一组(例如“家庭",“朋友",“同事").在运行时,创建新文件夹(见下文)时,可以设置与一个或多个组的habtm关系,该关系定义了谁可以访问该文件夹.完全选择 no 组将导致在世界范围内可访问的文件夹(即,无需登录用户即可访问这些文件夹).但是现在,我还不知道如何 ..
发布时间:2020-05-26 19:12:22 其他开发

如何用康康做分页?

我正在尝试使用cancan进行分页,但是如何将其与will_paginate之类的宝石集成尚不明确. 理想情况下,cancan的load_resource将委托给will_paginate并添加其他条件.例如,在cancan中,我已经声明了来宾用户 can :read, Post, :published => true ,这由load_resource自动处理.但是,我想在所有这些 ..
发布时间:2020-05-23 20:36:29 其他开发

巫术和简单形式的实现

长期阅读者的首次用户. 我正在整理我的第一个RoR应用程序,并隔离了我的应用程序应使用的所有内容:- 法术 Omniauth CanCan twitter-bootstrap(转换为sass) 和简单表单. 清洁,清晰和简单....不. 在我的一生中,无法将简单的表单(似乎是最简单的任务)与法术“登录"集成在一起,而不会在"remember_me"字段上出错. ..
发布时间:2020-05-19 22:36:54 其他开发

使用cancancan时添加没有相应模型的Controller

我添加了一个控制器collaborators来管理Users和Companies之间的特定类型的联接关联.问题是,每当我从collaborators加载任何内容时,都会出现错误 未初始化的常量协作者 据我了解,这是因为没有模型Collaborator,并且我正在使用cancancan进行授权.从旧的cancan(请注意,不是cancancan)文档,我已经能够收集到没有相应模型的控制器 ..

是否可以在模型中使用cancan?

我有一个带有状态机的模型,我想将不同的状态/事件/转换限制给不同的用户. 如何使用此模型访问当前用户和功能? 解决方案 您可以针对模型提供的任何方法在cancan中定义能力.状态机转换本身就是模型提供的方法,因此只需像设置其他任何方法一样设置您的能力即可. 例如,给定一个简单的模型: class Order ..
发布时间:2020-05-10 19:05:54 其他开发