我想以类似的方式限制CSV下载列,我限制索引区域的项目。
对于我的索引,我有:
index do
column "Name" do |purchase|
purchase.user.full_name
end
if current_admin_user.superuser?
column "User" do |purchase|
link_to purchase.user.email, admin_user_path(purchase.user)
end
end
end
只有高级管理员才能查看用户的电子邮件地址。
如果我对CSV执行相同操作,则AA会抛出错误:
undefined local variable or method `current_admin_user'
我可以在函数中执行current_admin_user检查而不会出现错误:
column "User Name" do |purchase|
if current_admin_user.superuser?
purchase.user.full_name.gsub(',','')
end
end
但是这有点草率,因为它让我为较少的管理员用户留下了死列。
有人为我找到了解决方案吗?
答案 0 :(得分:0)
尝试
index do
column "Name" do |purchase|
purchase.user.full_name
end
column "User", :if => proc{ current_admin_user.superuser? } do |purchase|
link_to purchase.user.email, admin_user_path(purchase.user)
end
end
end