Ecco una classe che ho usato per avereinclusi i moduli in una classe e l'esecuzione di codice
class Something
# Defines the validates class methods, which is called upon instantiation
include Module
validates :name
validates :date
end
ora ho diversi oggetti che utilizzano le stesse funzionalità, e peggio, molti oggetti che sono definendo cose simili, in questo modo:
class Anotherthing
# Defines the validates class methods, which is called upon instantiation
include Module
validates :age
end
voglio 'riutilizzo' il contenuto di queste classi, così li ho girato in moduli:
module Something
# Defines the validates class methods which is called upon instantiation
include Module
validates :name
validates :date
end
module Anotherthing
# Defines the validates class methods which is called upon instantiation
include Module
validates :age
end
E ora posso creare una classe
class ADualClass
include Something
include Anotherthing
end
Il problema che ho è che il metodo Convalida non sono chiamati quando creo un oggetto ADualClass ... Sembra che la "convalida: cosa" non viene mai chiamato. Perché? Come posso forzare questo?