Я создаю приложение, в котором у меня есть иерархические модули (без меня с абсурдными моделями, но концепция та же самая), так как в Animal есть Tracker, а у Tracker есть мобильный телефон, каждый со своим собственным serial_number ... (Animal_id: 10, серийный номер трекера: 12, imei мобильного телефона: 123456789123456)
Каким будет приемлемый способ определения отношений?
Теперь я использую следующую схему:
Animal has_one Tracker, Tracker has_one Cellphone
Cellphone belongs_to Cellphoneable, Tracker belongs_to Trackable
(Это полиморфные отношения)
Что мне трудно понять, так это то, что я сохраняю cellphoneable_id в таблице «Мобильные телефоны», но я начинаю думать, что отношения должны находиться в таблице «Трекер», оставить мобильный телефон в покое и позволить верхним уровням соединиться вниз. .
Я был бы очень признателен, если бы вы, ребята, могли бы помочь мне обсудить это ...