0

役割ベースの承認には cancan を使用します。

アクセスが拒否されたとき、私はこれをapplication_controllerに持っています

rescue_from CanCan::AccessDenied do |exception|
 flash[:notice] = flash_helper("Access denied.")
 render :template => "shared/access_denied"
end

問題は、js 応答を生成する必要がある場合と、html 応答を生成する必要がある場合があることです。

html 応答ではなく、js 応答である場合にフラッシュ通知を実行する条件が必要です。

何か案は?

4

1 に答える 1

1

私を正しい方向に向けてくれたMurifoXに感謝します。このコードはそれを行います

rescue_from CanCan::AccessDenied do |exception|
 if request.format == "text/javascript"
   flash[:notice] = flash_helper("Access denied.")
 end
 render :template => "shared/access_denied"
end
于 2013-01-11T11:42:01.463 に答える