簡體   English   中英

用戶在帶有Rails 4的CanCan初始值設定項中為nil

[英]user is nil in CanCan initializer with Rails 4

信息:

  • Rails 4.0.2
  • CanCan(1.6.10)
  • 設計(3.2.4)
  • ActiveAdmin(1.0.0.pre)

我正在嘗試使用cancan gem來管理對我的后台的訪問權限(activeadmin)。 我在這里遵循:教程http://www.activeadmin.info/docs/13-authorization-adapter.html#using_the_cancan_adapter

問題是,即使有用戶登錄,“用戶”變量在cancan的初始化程序中也始終為nil。

這是我的代碼:

class Ability
  include CanCan::Ability

  def initialize(user)
    return unless user

    if user.has_operator_role? :active_admin
      can :manage, ActiveAdmin::Page, name: 'Dashboard'
  end
end

我將調試器放在“除非用戶返回,否則返回”行之前,並且“用戶”變量始終為nil。 在視圖中,正確設置了“ current_user”變量。

謝謝你的幫助!

編輯

我也嘗試過CanCanCan gem,但不能解決問題!

CanCan已死,Rails 4幾乎不支持它。

你可以試試:

https://github.com/CanCanCommunity/cancancan

暫無
暫無

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

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