如何管理对 custom_page 操作的访问?我有这个代码:
ActiveAdmin.register_page 'Import' do
menu false
content do
panel t('views.import.title') do
render 'form'
end
end
page_action :parse, method: :post do
@import = current_user.imports.new(params[:import])
if @import.save
@import.process
end
end
page_action :check_status do
imports = current_user.imports.finished.unreaded
size = imports.size
imports.update_all readed: true
render json: {has_new_ended: size}
end
end
现在,访问此操作只有管理员,因为他的规则看起来像
can :manage, :all
但我需要将此操作访问到其他角色。如果我为某个角色这样做,那将无济于事。
can [:check_status, :parse], ActiveAdmin::Page, name: 'Import'
和这个
can [:manage, :parse, :check_status], Import