能力クラスにルールを適用しようとしています
私のアプリケーションの各ユーザー (管理者を除くが、それは無視します) は、別のモデルで定義されたプラクティスに属しています。
プラクティスは、何らかの理由でアクセスを停止する必要がある場合があります。
自分の能力モデルで言いたい
if user.practice.suspended?
can :read, Client, :practice_id => user.practice_id
else
can :manage, CLient, :practice_id => user.practice_id
etc....
しかし、何らかの理由で、使用できる一方で
user.practice_id
使えないアビリティモデルで
user.practice.<attribute>
それを回避するためのアイデアはありますか?
models/user.rb
belongs_to :practice
models/practice.rb
練習には多くのユーザーがいます。練習をしない唯一のユーザーは、ロールが :admin のユーザーです。
has_many :users