Я застрял с этим.У меня есть модель Position
, и мне нужно установить ассоциацию, в которой позиция может быть одновременно compounded position
(имеет связанные позиции) и ingredient position
(имеет позицию родителя (ей)).
Итак, я создал таблицу related_positions
с :copmound_id
и :ingredient_id
.
Чтобы было ясно, что мне нужно в качестве вывода:
related_positions
соединение_идентификатора |ингредиент_ид |
pos_1 |pos_2
pos_1 |pos_3
pos_1 |pos_4
pos_5 |pos_2
pos_5 |pos_6
pos_5 |pos_7
pos_1.ingredients = [pos_2, pos_3, pos_4]
pos_5.ingredients = [pos_2, pos_6, pos_7]
pos_2.compounds = [pos_1, pos_5]
Это может быть что-то вроде self join
, но с несколькими родителями
ОБНОВЛЕНИЕ:
Я нашел это Как смоделировать много себя-ференциальные отношения со многими родителями? .Что очень близко.Но я все еще не могу заставить его работать