Seul l'héritage de table et où l'utiliser dans les Rails

Je suis coincé dans un étrange problème de Conception,

Je suis en train de travailler sur deux types de profils de Modèles,

  • Profil de l'utilisateur (appartient à l'Utilisateur)
  • d'autres qui sont à maintenir en place, comme des "robots" (qui n'appartient pas à tout le monde)

Typique OO comportement de ces deux types de Profils est le même, mais seulement l'important attributs/propriétés sont communes ( la très importante, 5-6 en nombre), d'autres propriétés comme "intérêts etc"(presque 10-15 propriétés) ne sont pas là pour des profils de bot

Le codeur qui a travaillé sur ce déjà créé des modèles distincts/Contrôleurs pour des profils de bot /profils Utilisateur qui crée beaucoup de redondance partout et aussi comme prévu dur à maintenir, à écrire des tests, etc.J'ai voulu SÉCHER cette place, au moins pour résoudre certains de ces problèmes de redondance.

Quelqu'un a suggéré Unique de l'Héritage de Table comme une solution

Quelqu'un a suggéré d'Utiliser Polymorphes Associations de la place.

quelle est la meilleure approche. Quand peut-on utiliser des IST?

Ma propre pensée était STI est utilisé meilleures lorsque les attributs sont les mêmes pour les Modèles et ils diffèrent dans leur comportement.

Réflexions sur ce que je peux faire?