Je voudrais avoir une super-classe commune pour deux modèles en ruby, pour partager plusieurs méthodes. Disons que je veux un Truck
et Car
héritant de Vehicle
. Voici quelques options:insertion de superclasse dans les rails, sans table de base de données correspondante
Faire
class Vehicle < ActiveRecord::Base
, et ontclass Truck < Vehicle
etc. Mais j'obtiens des erreurs disant que je n'ai pas une table pourVehicle
(et je ne veux pas, non plus).Utilisez
module Vehicle
etinclude Vehicle
dansclass Truck < ActiveRecord::Base
. Mais alorsattr_reader
et les amis ne sont pas appliqués àTruck
.
Ainsi, je veux class Vehicle
. Comment est-ce que je fais cela sans avoir besoin d'une table? Je suis sûr qu'il ya une norme, belle façon de le faire ...
Ah, parfait, je savais que cela devait avoir un propre Solution. Merci! – Peter