Я не знаю, какая именно у вас проблема с вашим текущим подходом, но я бы посоветовал просто использовать следующее определение для таблицы images
:
images (id, user_id, uploaded_at, path)
Затем создайте таблицу соединенийкоторый связывает изображения с их группами:
image_groups (image_id, group_id)
Нам больше не нужен столбец is_grouped
, потому что мы можем просто проверить image_groups
, чтобы увидеть, появляется ли изображение в группе и / илиесли эта группа имеет более одного изображения.Точно так же столбец grouped_to
теперь стал избыточным, потому что таблица соединений хранит эту информацию.Обратите внимание, что вам также может потребоваться таблица groups
, в которой могут храниться некоторые метаданные о каждой группе изображений, такие как имя, время создания и т. Д.