在主动管理员中,我只想让某些用户能够下载表数据的csv。
我知道如何为所有这样的用户关闭它:
index :download_links => false do
# columns
end
理想情况下,我想做这样的事情:
index :download_links => current_admin_user.can_download? ? [:csv] : false do
# columns
end
但我无法访问current_admin_user。另外,我已经尝试在之前的过滤器中设置参数,但这也不起作用。我此刻陷入困境,并试图解决这个问题。
我正在使用authlogic以及带有rails的活动管理员。
答案 0 :(得分:0)
所以我想出来了。这不是太糟糕,我只是不得不以不同的方式解决问题。只需将此方法添加到application_controller.rb
即可def require_can_download_for_csv
raise unless current_admin_user.can_download?
end
然后将其添加到您的active_admin初始值设定项:
config.before_filter :require_can_download_for_csv
就是这样!