taurus2790
@taurus2790
Я не программер я только учусъ

Как использовать связи когда много сущностей?

Уважаемые подскажите, как правильно реализовать.

Есть 2 сущности: Сделки, Задачи. К ним нужно прикреплять фалы.
Решено было использовать 1 таблицу со ссылкой на сущность.

Таблица имеет следующие поля:
id,
component('deal' или 'task' то есть указатель сущности),
item_id (Айдишник самой записи, будь то хоть сделка хоть задача)
Ну и дальше поля информации о файле.

Теперь подскажите как использовать связи в такой таблице?
Я понимаю что можно патом выбирать нужное File::find и так далее, но хотелось бы чтобы к примеру удаляешь сделку и фалы удалялись.
  • Вопрос задан
  • 187 просмотров
Решения вопроса 1
@dmitryKovalskiy
программист средней руки
select something from table1 as t
INNER JOIN сделки as s ON s.id = t.itemId AND t.component = 'сделки'
INNER JOIN сущности as s1 ON s1.id = t.itemId AND t.component = 'сущности'

Можно например так. Но на мой взгляд идея так себе. Я бы наверное сделал таблицу "Файлы"(id,filedata) и набор таблиц вроде ФайлыСделок(СделкаИд,ФайлИд) , ФайлыЗадач(ЗадачаИд, ФайлИд)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы