cancan相关内容

CanCan::Ability 在哪里定义了 current_user 方法?

几乎我在标题中提到的内容.我在我的代码中使用 CanCan::Ability 来检查权限和能力.它需要定义一个 current_user 方法.我猜它来自设计(但不确定),我希望覆盖它.最好的方法是什么? 解决方案 找到了 此处 在源代码中.不过,这与设计无关.文档位于方法上方并描述了如何覆盖它. ..
发布时间:2022-01-07 17:17:07 其他开发

管理员更改用户的批准状态 - Rails + Devise + Cancancan

我遵循了这个link 以了解如何让管理员批准新用户.我的 User 模型上有一个 approved 属性,它是一个布尔值. 2 问题 - 1) 当我以管理员身份登录并通过 link_to "Edit", edit_user_path(user) 转到编辑用户以更改已批准的用户时 - url 用于正确的用户,但随后更新操作尝试更新当前的管理员用户. 2) 我希望覆盖所需的当前密码,因此我 ..
发布时间:2022-01-07 17:16:53 其他开发

如何让设计与多个模型或角色一起工作?(最好用 CanCan 和 rolify)

使用 devise,拥有多个模型或角色的最佳方法是什么?以下是我的应用中需要的模型或角色: -Author:可以上传内容到站点- 客户:支付月费以访问内容 用户既可以是作者,也可以是客户.我认为他们可以共享同一个登录表单,因为他们都将使用他们的电子邮件地址登录. 我尝试过使用 CanCan 和 rolify,但不知道如何在注册过程中添加不同的角色.当用户注册为作者时,他应该被赋予“作者" ..
发布时间:2022-01-07 17:13:00 其他开发

如何在 Rails 中加入多角色、多组织表

我正在尝试为 Rails 设计找到一个对我来说并不那么明显的解决方案.一个非常擅长这个东西的朋友给了我他的看法,但我想知道是否有一个 rails 模式 - 我缺少的知识是 rails 如何创建关系...... 我有这样的问题空间.用户可以在多个组织中扮演多个角色.因此,例如,用户可以是组织 1 的“标准用户"和“高级用户",但可以是组织 2 的“管理员". 我正在使用 Devise 和 ..
发布时间:2022-01-07 17:03:53 其他开发

在 Rails 3 中处理多租户的最佳方式

我正在构建多租户应用程序. 所有的数据隔离都是由每个表中的TenantID列完成的. 为所有租户模型自动处理多租户的最佳方法是什么. 示例: Contacts.new({.....}) 应该自动添加 :tenant =>当前_user.tenantContacts.where({....}) 还应该添加 :tenant =>当前_user.tenant 目前我在 CanCan ..
发布时间:2022-01-07 17:00:07 其他开发

如何建立典型的用户 HABTM 角色关系

我对此很陌生,我正在为我的用户身份验证使用 cancan + devise.但是,我不太确定设置典型的用户 HABTM 角色关系意味着什么,也不太了解 HABTM 关系是什么. 谁能很好地解释它或给我指出一个好的教程或示例? 解决方案 HABTM 意味着拥有并属于许多.您基本上需要一个表作为中间人来跟踪多个 ID(称为直通表).当被引用为典型的用户 HABTM 角色关系时,它们实际上 ..

如何将 CanCan 与多个设计模型集成?

我将如何为多个设计模型定义能力? 解决方案 让我们假设您的应用程序有两个独立的 Devise 驱动的用户模型,称为 User 和 Admin.这意味着您可以同时使用 current_user 和 current_admin 之类的方法. 让我们进一步假设您只有/想要一个 Ability 类,其中包含您所有的 CanCan 权限设置... class 能力包括 CanCan::Abi ..
发布时间:2022-01-07 16:55:19 其他开发

Rspec、CanCan 和 Devise

我正在开始一个项目,我希望能够测试一切:) 我在 CanCan 和设计方面遇到了一些问题. 例如,我有一个控制器联系人.每个人都可以查看,每个人(被禁止的人除外)都可以创建联系人. #app/controllers/contacts_controller.rb类 ContactsController '谢谢'}结尾别的response_to do |f|f.html { 渲染:动作 ..
发布时间:2022-01-02 10:19:30 其他开发

Capybara、Devise、CanCan 和 RSpec 集成测试:有效登录 302 重定向到 example.com

更新:请参阅文章末尾,了解规格现在如何工作,因为我在规格/请求而不是规格/控制器中有我的规格.仍然想知道如何获得有效的登录用户以与我的控制器进行集成测试. 我第一次与 Devise 和 CanCan 合作,但在进行最基本的集成测试时遇到了困难,我正在验证登录用户是否......好吧......登录.我已阅读无数关于 Devise 和 RSpec 集成测试的帖子和答案(即通过直接通过 http ..
发布时间:2022-01-02 10:04:41 其他开发

如何使用 RSpec 和 Devise/CanCan 进行集成测试?

如果我有一个 Devise 模型用户,其中只有具有角色 :admin 的用户才能查看某个 url,我如何编写 RSpec 集成测试来检查该 url 的状态是否返回 200? def login(user)发布 user_session_path, :email =>user.email, :password =>'密码'结尾 这是在这个问题的答案中伪建议的:在请求规范中存根身份验证,但我一生都 ..
发布时间:2022-01-02 09:40:08 其他开发

Rails 4 用户角色和权限

我正在为一个组织编写一个 Rails 应用程序.每个用户可能有 1 个或多个角色,并且只能根据这些角色访问某些控制器操作. 例如,只有 admins 可以创建、销毁和更新 User 的某些字段.此外,还有Team,每个都有一个团队负责人,只有团队负责人可以更新Team(例如成员列表).但是,Admins 是首先分配团队负责人的人. 我的场景的具体细节并不重要,我只是希望我描述了有许多不 ..
发布时间:2021-12-19 20:33:50 其他开发

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

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

如何使用 Devise 根据用户的角色重定向用户的主(根)路径?

我正在开发一个项目管理应用程序,在该应用程序中,我有project_managers 和客户.我正在使用 Devise 和 CanCan 进行身份验证/授权. 登录后我应该在什么时候将用户重定向到他们自己的特定控制器/布局/视图?有没有办法检查 routes.rb 中的 current_user.role 并根据他们是项目经理还是客户来设置根(或重定向)?这是我可以在 Devise 的某个地 ..
发布时间:2021-12-13 14:22:04 其他开发

如何将 CanCan 与 Rails 管理员一起使用来检查所有权

当我的应用中的用户不是管理员用户时,我只想让他们看到他们拥有的字段. 是否有一个如此设置 can :see 或类似的东西在每个字段的基础上,以便它只显示使用“可以看到"的字段,或者我应该有一个名为 can :oversee 表示他们可以看到所有内容. 我想在 rails admin 中检查用户是否是 admin 会容易得多,所以在哪里设置 rails admin 只提取当前用户的记录. ..
发布时间:2021-07-13 19:11:09 其他开发

期望&lt;&quot;index&gt;的Rspec控制器错误但是用<&quot;&gt;渲染

刚开始测试,我正在努力让一些控制器测试通过. 以下控制器测试抛出错误: 期待 但是用 渲染 我的控制器规格之一包含以下内容: 需要 'spec_helper'描述 NasController 做渲染视图登录用户描述“GET #nas"做它“填充一组设备"做@location = FactoryGirl.create(:location)@location.users ..
发布时间:2021-07-12 20:46:09 其他开发

检查Ruby中是否有多个条件为真

我有以下Ruby条件: 我想翻译为:如果用户对数组中的任何资源都具有读取权限. 但是,它总是返回false.我该如何解决? 我不想做: 是否可以?:read,:policy ||能够?:read,:journey ||等等... 解决方案 可以. 可枚举#任何? 正是您要寻找的东西: ..
发布时间:2021-04-21 19:12:17 其他开发

Rails,Devise,角色模型和CanCanCan-定义能力

我正在使用Rails 4制作一个Web应用程序. 我正在尝试使用CanCanCan定义各种角色的能力. 我有一个用户模型和一个个人档案模型.每个用户可以有许多个人资料.每个个人资料可以扮演不同的角色. 在我的Profile.rb中,我的角色(使用Role Model gem)定义为: 包含RoleModel角色:admin,:manager,#coalfacer:student ..
发布时间:2021-04-21 19:12:13 其他开发

登录用户的Rspec测试.

我正在尝试为能力等级创建rspec测试.我已经成功地编写了管理员功能并对其进行了测试,但是我不知道如何为登录用户编写测试(登录用户只能更新和销毁其自己的注释). 这是capability.rb: 类功能包括CanCan :: Abilitydef initialize(用户)用户|| = User.new如果是user.admin?可以:管理,:全部别的可以:阅读,:全部可以:create ..
发布时间:2021-04-21 19:12:06 其他开发

未初始化的恒定能力导轨

针对此问题,我已经采用了不同的解决方案,但是没有一个起作用,所以请不要尝试重复解决该问题. 我的用户表中有角色列.因此,用户可以通过 admin 或 user 进行操作,而我需要使用 CanCan 在用户Role的基础上设置权限.我想将所有权限授予管理员.我以管理员身份登录,但是当我访问/users 时,出现错误 uninitialized constant Ability ,而当我删除 l ..
发布时间:2021-04-21 19:12:04 其他开发