Я создаю приложение, где у меня есть иерархические модули (голые со мной с абсурдными моделями, но концепция такая же), как у Animal есть Tracker, а у Tracker есть мобильный телефон , каждый со своим серийным номером ... (Animal animal_id: 10, Tracker serial_number: 12, Cellphone imei: 123456789123456)Rails has_one/принадлежит_от концептуальной дискуссии
Что было бы приемлемым способом определения отношений?
То, что я использую в настоящее время эта схема:
Animal has_one Tracker, Tracker has_one Cellphone
Cellphone belongs_to Cellphoneable, Tracker belongs_to Trackable
(Это полиморфные отношения)
Что у меня проблемы с пониманием, что я хранить cellphoneable_id в таблице сотовых телефонов, но Я начинаю думать, что отношения должны находиться в таблице Tracker и оставить мобильный телефон в одиночку и позволить верхним слоям относиться вниз.
Я оценил бы много, если вы, ребята могли бы мне помочь обсудить это вниз ...
Просто так я вас правильно понял: Мобильный телефон на самом деле наследует от Cellphoneable и Tracker от отслеживаемых, правильно? Тогда это не отношение 'own_to' в rails-talk, а STI (однонаправленное наследование). – nathanvda
Нет, это не наследование, они на самом деле разные модели –