首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有多种角色的最佳方法Cancan

具有多种角色的最佳方法Cancan
EN

Stack Overflow用户
提问于 2011-06-19 20:43:32
回答 1查看 514关注 0票数 1

寻找一些关于在我们最新的rails3项目中使用cancan的一般建议和技巧。

我们正在构建一个内部使用的订单系统,并提供有限的客户访问权限。其中包括:

超级管理员超级帐户超级客户管理客户端帐户客户端

在我们的观点中,我们以前使用了以下几种组合:

<% (如果可以):管理用户%>

<%若current_user.role_ids.include?(2) %>

我怀疑后者是不好的做法,并希望找出如何最好地实现同样的方法。

我们也对如何处理许多角色感到有点困惑。

提供对多个用户组的访问的最佳方法是什么-即超级管理员和超级技术?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-27 04:16:11

我认为最好的替代方案

代码语言:javascript
复制
<% if current_user.role_ids.include?(2) %>

是为模型中的每个角色创建一个方法,例如:

代码语言:javascript
复制
class Company < ActiveRecord::Base
  .
  . 
  def super_admin?
    self.role_ids.include?(2)
  end
  .
  .

这样,您将从视图中删除查询逻辑,并将其保留在控制器上,您还可以通过以下操作访问这些角色:

代码语言:javascript
复制
<% if current_user.super_admin? %>

希望它有帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6405013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档