私は能力クラスを定義して、ログインしたユーザーに応じて、その能力のクラスを提供することができますどのように私は思っていた。Railsのできる複数の工夫の私は、アクティブな管理を使用していますモデル
、ことができ及び考案用CAN能力クラス私はUserとAdminUserモデルを作成しました。
私たちは確かにカスタム機能ファイルと使用を定義することができることを決定するために、私はこのwikiエントリを使用していた
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new
if (user)
can :manage, Item
end
end
end
今私のability.rbでこれを持っている代わりにability.rbの:
付ける機能https://github.com/ryanb/cancan/wiki/changing-defaults
しかし、私がやってみたかったです、「管理者以外のユーザーが」で署名されている場合ability.rb使用することができ、カスタムユーザーadminがで署名されている場合。
質問:カスタムのものは必要なく、1つのability.rbファイルでアクセス許可を設定できますか?
ああ、そうです。私はあなたがUserとAdminUserのために別のクラスを使用したことに気付かなかった。 Active Adminで使用するクラスを変更できるはずですが、そのシステムのユーザーではないため、どこにあるのか正確にはわかりません。おそらくあなたの初期化子をチェックする必要があります。 – jdl