А подскажите, пожалуйста - это нормально, когда несколько доктриновских сущностей

замаплено на одну таблицу? У меня есть несколько "бандлов" в аппликухе и они занимаются вообще разными вещами. И так уж сложилось, что в базе данных эти данные часто хранятся в одних и тех же табличках.

Нормально ли юзать в одном куске приложения сущность A1, которая ссылается на табличку A и состоит из одного набора полей, а вообще в другом кусе приложения - другая сущность A2, которая ссылается на ту же табличку A и имеет вообще другой набор полей. У них свои репозитории и всё такое, из общего только айдишник.
Или тут есть какие-то подводные камни? Да, структура базы кривая, я в курсе, но покаместь приходится мириться.

p.s. да, я в курсе бандлов, но речь сейчас не о них, а о подходе с разделеним сущностей

10 ответов

9 просмотров

Если одна на запись а остальные ридонли то костыльно, но ещё терпимо (если они из одного контекста). А вот если все пишут то совсем грустно

получается, что в одной таблице хранятся разные объекты?

E- Автор вопроса
Anton K.
получается, что в одной таблице хранятся разные об...

объекты как бы одни, просто дохера инфы свалено в одну таблицу и используется в совсем разных случаях

для разделения сущности, при этом хранение в одной таблице можно применить Embeddable классы, так будет проще рефакторить и вообще поддерживать

E
Embedded не то(

тогда страдай ))

E- Автор вопроса
𝔏𝔦𝔩𝔦𝔱𝔥
тогда страдай ))

а как вообще решаются такие кейсы? вот есть сущность, например, Car. у неё есть связь oneToMany на картинки. Управление этими картинками вынесено в отдельный кусок проекта, там своя мутная логика, она более-менее изолирована и никому не мешает. Больше в проекте нигде эти картинки не используются, это такая вещь сама в себе. И что, по всему проекту, где мне нужна инфа о этом Car'е - я везде могу вытащить эти картинки? А какой смысл всему проекту знать об этих картинках? Embedded не подойдёт потому что мне нужно со связями разносить. Разбивать сущность на осмысленные куски говорят тоже муветон. Как сами решаете такие затыки?

E
а как вообще решаются такие кейсы? вот есть сущнос...

уже не раз упоминалось, что на чтение выбрать доктрину - плохое решение, лучше читать напрямую из БД через dbal, а там уже выбирай что тебе нужно, хочешь джоинами, хочешь - определенные колонки. Но судя по твоей ситуации у тебя один фиг все хранится в одной таблице. выход только один - перечислить колонки. Если отрефакторишь и разнесешь по разным таблицам - то пофиг, связь будет, и профит получишь при редактировании сущности или новой, а на чтение если она не нужна тебе - читай с прямо с БД и не джоини

E- Автор вопроса
𝔏𝔦𝔩𝔦𝔱𝔥
уже не раз упоминалось, что на чтение выбрать докт...

чтение вообще пофиг, чтение сделано мускулом, работает на ура

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта