J'ai expérimenté différentes façons de structurer mon application, et en particulier les modèles basés sur ActiveRecord, en examinant la notion d'avoir une classe séparée dont les résultats sont sauvegardés dans un seul champ. La composition aurait pu fonctionner, mais il y a eu beaucoup de discussions sur son maintien ou non, donc je me demandais quelles alternatives vous pourriez avoir.
Exemple :
class Gadget < ActiveRecord::Base
attr_accessor: lights
end
Maintenant, je voudrais que le lights
doit être "gérée" par une classe totalement distincte :
class Lights
def doSomething
end
def doSomethingElse
end
end
Quelle est la meilleure façon de déléguer cette logique en dehors de l'interface de l'application ActiveRecord
et dans le modèle Lights
afin de stocker les résultats de manière transparente ?
par exemple, en utilisant une instance du Lights
comme la classe lights
mais cela ne fonctionnera pas, puisqu'il n'y a pas d'association, n'est-ce pas ?
par exemple, utiliser method_missing
pour transmettre toutes les demandes au lights
mais cela ne fonctionnera pas non plus, car elle ne sera pas conservée dans la base de données.
Ce n'est peut-être pas possible, mais je suis intéressé par les moyens de conserver les résultats des opérations logiques. Toutes les suggestions sont les bienvenues.