簡體   English   中英

CanCanCan。 如何僅顯示屬於當前登錄管理員的項目

[英]CanCanCan. How to show only items that belong to that current logged in admin

我已經遍歷了Rails教程和Cancancan(ActiveAdmin文檔)。 現在,我嘗試進行授權以僅允許當前登錄的admin_user可以查看屬於該admin_user的通知時遇到問題。 這是我的代碼:

def initialize(admin_user)
    can :read, AdminUser, id: admin_user.id
    can :read, ActiveAdmin::Page, name: "Dashboard", namespace_name: "admin"
    can :read, Notification, id: notification.admin_user_id
end

我試着玩了notification.admin_user_id部分,但我總是收到錯誤消息

undefined local variable or method 'notification'

不知道什么是Notification但是如果說Notification belongs_to :admin並因此具有admin_id列,我相信您應該這樣寫

can :read, Notification, admin_id: admin_user.id

換句話說,您不應在具有特定id那些通知上設置功能。 您應該對具有特定admin_idadmin_user_iduser_id或指向該通知所屬的admin_user任何鍵的通知執行此操作。 這樣,您實際上說“讓admin_user能夠讀取屬於他的通知”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM