2016-05-06 16 views
1

rolify gemのドキュメントに従ってください。 この宝石は、あなたのUserクラスにrolifyメソッドを追加します。また、役割が追加または削除されたときのためにUserクラスにオプションのコールバックを指定することができます。rolify gemに複数のコールバックを追加する方法

class User < ActiveRecord::Base 
    rolify :before_add => :before_add_method 

    def before_add_method(role) 
    # do something before it gets added 
    end 
end 

rolify方法は、以下のコールバックオプションを受け付けます。

before_add 
after_add 
before_remove 
after_remove 

Mongoidコールバックも同じことをサポートして動作しますされています方法。

私はそれをrolifyするために、複数のコールバックを追加するだけで、最後の1 のために私のコード

class User < ActiveRecord::Base 
    rolify :before_add => :before_add_method 
    rolify :before_remove => :before_remove_method 

    private 

    def before_add_method(role) 
    #to do 
    end 
    def before_remove_method(role) 
    #to do 
    end 
end 

と呼ばれるだけbefore_remove_method方法を動作します。 宝石をロールアップするために複数のコールバックを追加する方法はありますか?

答えて

6

解決策が見つかりました。 実際には、次のように区切られた各コールバックを渡す必要があります。

rolify :before_add => :before_add_method, :before_remove => :before_remove_method 
関連する問題