Ruby on rails activeadmin自定义页面上的授权

Ruby on rails activeadmin自定义页面上的授权,ruby-on-rails,activeadmin,pundit,Ruby On Rails,Activeadmin,Pundit,在带有activeadmin gem(当前主分支)的Rails 4应用程序中,我使用Pundit进行授权。它适用于资源,但我无法使它适用于页面 例如: ActiveAdmin.register_page "Home" do content do para "some text" end end 如何为特定用户授权 通过阅读权威人士自述,我尝试了以下代码,但它不起作用 class HomePolicy < Struct.new(:user, :home)

在带有activeadmin gem(当前主分支)的Rails 4应用程序中,我使用Pundit进行授权。它适用于资源,但我无法使它适用于页面

例如:

ActiveAdmin.register_page "Home" do
    content do
        para "some text"
    end
end
如何为特定用户授权

通过阅读权威人士自述,我尝试了以下代码,但它不起作用

class HomePolicy < Struct.new(:user, :home)
  def index?
    true
  end

  def show?
    true
  end
end
class HomePolicy

有什么想法吗?

这是我在仪表板上使用的一个示例策略。我把它放在
策略/active\u admin/page\u policy.rb
下。也许这会有所帮助

class ActiveAdmin::PagePolicy
  attr_reader :user, :record

  def initialize(user, record)
    @user = user
    @record = record
  end

  def show?
    case record.name
    when 'Dashboard'
      true
    else
      user.admin?
    end
  end
end

@Alex你必须深入Activeadmin代码库才能找到类似的东西