Ich möchte eine Methode zu einem Rails-Modell hinzufügen, die beim Testen verwendet werden soll. Wenn ich dies tue
class Model
def something_new
do_something
end
end
in der Rails-Konsole oder in einer Datei, die zur Laufzeit geladen wird, wird Model überschrieben und nicht verändert. Wenn ich etwas wie v = Model.class
vor den obigen Zeilen wird die neue Methode erfolgreich zur bestehenden Klasse hinzugefügt. Offenbar wird der Verweis benötigt, um zu signalisieren, dass eine bestehende Klasse erneut geöffnet wird.
Andererseits kann man z. B. eine Methode zu Fixnum hinzufügen, ohne dass man sich vorher auf diese beziehen muss. Was ist hier los, und wie kann man sicherstellen, dass eine bestehende Klasse erneut geöffnet und geändert wird, anstatt sie zu überschreiben?
Gracias.