[英]use cancan and devise in my application
我想使用cancan
來限制想要查看我的應用程序中某些頁面的用戶。
所以我嘗試通過本教程來做到: http : //www.roberthuberdeau.com/articles/9-Blog-tutorial-part-3
我有兩個角色:Admin和Worker,還有兩個控制器:Tasksadmins和Workers。
我想定義下一件事情:
1)工人可以管理和查看工人控制器的所有內容。
2)管理員可以管理和查看Tasksadminscontroller的所有內容。
我不確定是否定義正確:
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new # guest user
if user.role? :Admin
can :manage, :tasksadmins
elsif user.role? :Worker
can :manage, :workers
end
end
end
我認為我不需要實現的下一件事是:“ def初始化用戶位適用於來賓用戶。” 我強迫用戶使用以下命令登錄: before_filter :authenticate_user
接下來的事情是:根據用戶角色開始限制對博客應用程序的訪問:
我不知道該寫些什么,在哪里寫。
在示例中,他寫道:
authorize! :edit, @article
因此,我嘗試在taskadmins控制器中編寫以下代碼:
authorize! :edit, @tasksadmins
authorize! :new, @tasksadmins
authorize! :index, @tasksadmins
authorize! :create, @tasksadmins
authorize! :show, @tasksadmins
authorize! :destroy, @tasksadmins
但我遇到一個錯誤: undefined method 'authorize!' for TasksadminsController:Class
undefined method 'authorize!' for TasksadminsController:Class
請幫助我,我在cancan
的定義的cancan
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.