2012-12-28 6 views
8

Come posso avere una preoccupazione che ho scritto in questo modo:Il sovraccarico di un metodo in un ActiveSupport :: preoccupazione

module Concerns 
    module MyConcern 
    extend ActiveSupport::Concern 
    ... 
    def my_concern_magic(arg0,arg1) 
     #exciting stuff here 
    end 
    end 
end 

che è incluso in un modello che sovraccarica my_concern_magic? Per esempio.

class User 
    include Concerns::MyConcern 
    ... 
    def my_concern_magic(arg0) 
    arg1 = [1,2,3] 
    my_concern_magic(arg0,arg1) 
    end 
end 

risposta

11

Poiché tra cui un modulo lo inserisce nella catena degli antenati, si può chiamare super:

class User 
    include Concerns::MyConcern 

    def my_concern_magic(arg0) 
    arg1 = [1, 2, 3] 
    super(arg0, arg1) 
    end 
end 
+0

Grazie Andrea! Ha funzionato come un fascino. –