nepster-web
@nepster-web

Частичная выборка и сущности?

Все примеры, что есть по DDD, конечно классные и все такое, но когда дело доходит до разработки появляются вопросы.

К примеру у нас есть сущность, которая может содержать коллекцию других сущностей.
Например: Сущность Клиент, которая может содержать коллекцию из сущностей Тренировка.

Иногда бывает задача, когда нужно достать в контексте клиента одну конкретную тренировку - например на странице конкретной тренировки.
Это очень легко сделать, обратившись к коллекции, пройти ее циклом и найти нужную сущность, либо по ключу.

Однако, зачем делать запрос и получать все тренировки, если нужна только одна?

Мы так-же можем запросить 1 тренировку и поместить ее в коллекцию, тогда это будет частичный объект с неполными данными, что не есть хорошо (да еще и контекст нарушается).

В общем как поступать в случаях, когда в контексте сущности нужна часть данных?
Ну и конкретные вопросы
1. Можно ли в сущности содержать методы, например getTrainings() и getTraining($id) с отложенной загрузкой?
2. Не напрашивается ли тут использование каких-то временных VO, которые будут сформированы с помощью Сервисов и и будут содержать данные для конкретной рабочей страницы?
  • Вопрос задан
  • 240 просмотров
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov Куратор тега PHP
Web developer
Не усложняйте без необходимости. Нужна конкретная тренировка - получайте ее объект без всяких коллекций. Либо самостоятельно (Training::findOne(['training_id' => $trainingId])), либо через клиента ($client->getTraining($trainingId))
Ответ написан
Ваш ответ на вопрос

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

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