33得票3回答
如何创建第一个(管理员)用户(CanCan和Devise)?

我按照Tony的教程在我的Rails 3应用程序中进行了身份验证。 我不想在我的应用程序中进行公共注册,只想使用管理员帐户创建新用户,但我无法手动创建管理员帐户,因为在Users表中有必须生成的加密密码和盐,我不知道如何操作 :|

22得票4回答
能否在不使用模型的情况下使用 CanCan 和控制器?

我正在使用CanCan进行授权。 我在/app/config/ability.rb中定义了模型-操作-用户规则,并且它运行良好。 我添加了load_and_authorize_resource到我的application_controller中,一切都完成了。 然而,我还有很多视图和控制器没...

9得票2回答
Rspec控制器错误:期望<"index">,但使用<"">进行渲染。

作为一名新手测试者,我在努力使一些控制器测试通过。 下面的控制器测试抛出了错误: expecting &lt;"index"&gt; but rendering with &lt;""&gt; 我在其中一个控制器规范中有以下内容: require 'spec_helper'...

8得票2回答
如何处理cancan中由父对象定义的:create权限?

假设你正在编写Blogger的软件。 每个用户只能在拥有博客的情况下创建博客文章。在这种情况下,CanCan通常会定义以下能力检查: user.can? :create, Post 然而,仅当用户是当前博客的所有者时,才能创建帖子,并且没有办法只使用其类名引用当前博客。我真正需要做的是...

7得票1回答
使用CanCan实现上下文感知授权

我希望使用CanCan来处理权限。我的网站有许多不同的权限级别,并且大部分都是上下文感知的。例如,在我的三个主要模型中,以下是它们之间的关系: class User &lt; ActiveRecord::Base has_many :league_relations has_many...

24得票1回答
CanCan中load_and_authorize_resource的解释

我想知道 load_and_authorize_resource 在内部是如何工作的。 我查看了 Github 页面 链接 并尝试理解,但没有找到有用的信息。我只知道load_and_authorize_resource就像一个before_filter,并且以某种方式加载我们在 abili...

10得票1回答
如何在 gem 控制器中使用 CanCan?

我花了一些时间试图找出使用 CanCan 授权 gem 中控制器的最佳方法。我特别使用的是Comfortable Mexican Sofa。我已经配置好了 Devise 和 CanCan,但在 Comfy 中授权特定控制器时遇到了麻烦。我能够找到的与我需要的最相似的东西是 Fortress C...

11得票1回答
为什么这个 RSpec 请求规范没有更新模型?

我有一个与用户模型交互的请求规范。我想确保拥有管理员角色的用户可以创建/编辑/删除用户。我现在遇到的问题是,编辑操作无法更新用户。当我手动执行网站上的操作时,一切正常,但测试未能更新用户。 以下是我的规范: it 'edits a user' do @user = FactoryGir...

12得票2回答
如何绕过 Devise 授权以访问特定标记为公共的记录的最佳方法?

我在一个Rails 3.2项目中使用devise和cancan。我有一个带有布尔标志public的事件模型。如果将事件标记为public => true,那么我希望任何人(无论是否登录)都能访问该记录。GET /events/:id 如果将其标记为 public => false,则一系列ca...

7得票2回答
如何使用cancan允许用户仅访问自己的展示页面?

我一直在学习使用cancan宝石的railscast,但是不知道如何只允许用户访问自己的展示页面。 我的代码看起来像这样: 能力模型 class Ability include CanCan::Ability def initialize(user) user ||= ...