私が管理しているアプリケーションには、ユーザーモデルにこのコードがあります
delegate :can?, :cannot?, :to => :ability
デリゲートがアソシエーションのショートカットになることは知っていますが、理解していません:to => :ability
cancanのability.rbのショートカットだと思いますが、100%確実ではありません
私が管理しているアプリケーションには、ユーザーモデルにこのコードがあります
delegate :can?, :cannot?, :to => :ability
デリゲートがアソシエーションのショートカットになることは知っていますが、理解していません:to => :ability
cancanのability.rbのショートカットだと思いますが、100%確実ではありません
その構文は次のように要約されます。
delegate(:can?, :cannot?, {:to => :ability})
delegateドキュメントから、:toオプションは委任先のターゲットオブジェクトを定義します。(CanCanは、abilityこれを呼び出している場所でインスタンスメソッドを定義している可能性があります)