2013-02-24 51 views
-1

我有一个piece of code in a model that I need but that breaks RailsAdmin调用方法只有当用户是管理员

class Item < ActiveRecord::Base 
    serialize :properties, ActiveRecord::Coders::Hstore 
end 

因为我还没有找到一个解决方案来解决这个问题,我打算只运行这行代码时,用户不是管理员:

unless current_user.role?("Admin") # CanCan is installed 

我如何能实现在项目模型是这样的:

在控制器中,我可以通过调用这样做呢?还是有更好的方法(我有一种感觉)?

回答

0

看一看康康舞+ rolify可以使用current_user.has_role? :管理员

编辑

设计让你的方法current_user
Rolify给你的方法has_role? :admin
惨惨为您提供了康康舞喜欢can? :destroy, @project

注方法:要使用,不能你需要方法玷污能力类

+0

感谢您的答复。我安装了cancan,但current_user在我的模型中不可用。不知道我是否想安装rolify,因为我已经有一个RBAC系统。 – migu 2013-02-25 02:56:24

+0

current_user来自设计,我以为你已经使用设计,因为你列出了该方法。 – 2013-02-25 02:57:50

+0

current_user不一定来自使用authlogic的许多人,例如,也可以通过自己的README在ApplicationController中手动实现此方法。 – 2013-02-25 03:38:12

相关问题