Я наткнулся немного на стену ... вот моя упрощенная схема:
TABLE users
id
TABLE assets
id
userid
TABLE presentations
id
userid
На этом этапе легко создать отношения между ПОЛЬЗОВАТЕЛЯМИ -> АКТИВАМИ и ПОЛЬЗОВАТЕЛЯМИ -> ПРЕЗЕНТАЦИИ... но я сталкиваюсь с чем-то вроде головокружения, когда я представляю ШАБЛОНЫ для ПРЕЗЕНТАЦИЙ:
TABLE templates
id
Видите ли, каждый ШАБЛОН имеет несколько позиций ... не все ШАБЛОНЫ имеют одинаковое количествопозиций.В каждой позиции находится АКТИВ или она пуста.
Я с трудом пытаюсь выяснить, каким способом лучше всего связать ПРЕЗЕНТАЦИИ -> ШАБЛОНЫ (и позиции) -> АКТИВЫ ... и сохранитьИмейте в виду, что не все АКТИВЫ связаны с ПРЕЗЕНТАЦИЕЙ.
Предлагаемая схема:
TABLE presentations
id
TABLE templates
id
TABLE positions
id
templateid
assetid
Но с этим есть проблема.Это предполагает, что каждый ШАБЛОН может просто случайное количество ПОЗИЦИЙ.Да, ШАБЛОН имеет 1 - n отношение с ПОЗИЦИЯМИ, но не совсем.Потому что ШАБЛОН не был бы ШАБЛОНОМ, если бы его нельзя было повторить.ШАБЛОН 1 имеет 4 позиции и всегда будет 4.