Hier ist eine Klasse, die ich verwendet habe, umEinschließlich Module in einer Klasse und Ausführung von Code
class Something
# Defines the validates class methods, which is called upon instantiation
include Module
validates :name
validates :date
end
ich jetzt mehrere Objekte, die die gleichen Funktionen verwenden, und schlimmer noch, mehrere Objekt, die ähnliche Dinge definieren, wie folgt aus:
class Anotherthing
# Defines the validates class methods, which is called upon instantiation
include Module
validates :age
end
ich möchte ‚Wiederverwendung‘ der Inhalt dieser Klassen, so drehte ich sie in Module:
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
Und ich kann nun eine Klasse
class ADualClass
include Something
include Anotherthing
end
Das Problem erstellen, die ich habe, ist, dass die Methode validiert werden nicht genannt, wenn ich ein ADualClass Objekt erstellen ... Es scheint, dass die „bestätigt: Ding“ wird nie genannt. Warum das? Wie kann ich das erzwingen?