1

アクティブ管理で、特定のユーザーだけがテーブル データの csv をダウンロードできるようにしたい。

次のように、すべてのユーザーに対してそれをオフにする方法を知っています。

index :download_links => false do
  # columns
end

理想的には、次のようなことをしたいと思います。

index :download_links => current_admin_user.can_download? ? [:csv] : false do
  # columns
end

しかし、current_admin_user へのアクセス権がありません。また、前フィルターでパラメーターを設定しようとしましたが、それも機能しませんでした。私は現時点で立ち往生しており、これを理解しようとしています。

Railsでアクティブな管理者とともにauthlogicを使用しています。

4

1 に答える 1

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

以上です!

于 2013-07-01T19:41:01.390 に答える