gee_danko
@gee_danko
mr. Nobody

Как объединить две сущности в одну?

Имеется две сущности, одна в БД, другая приходит от клиента. Как объединить эти две сущности в одну так, чтобы сущность пришедшая от клиента обновила сущность полученную из БД, но только теми свойствами, что не равны NULL у клиентской (пришедшей) сущности?
  • Вопрос задан
  • 382 просмотра
Решения вопроса 1
gee_danko
@gee_danko Автор вопроса
mr. Nobody
Нашел решение через Serializer компонент. Его обновили в 2.7, где добавили опцию, что необходима. Всем спасибо!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Dreamka
@Dreamka
Web-разработчик.
Пользуйтесь DI
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
другая приходит от клиента

ммм.... с внешней API? Или именно с клиента через Request? если последнее то это не сущность, это просто какие-то данные.

В целом как-то так:
1) забираем данные из запроса и делаем из этого DTO (просто какой-то объект с полями, можно публичными что б было проще, можно вообще просто массивчики или stdClass юзать).
2) валидируем этот DTO
3) если все хорошо, либо у нас есть сервис, который умеет через сеттеры обновлять энтитю, либо у энтити есть метод updateFromDTO($dto);

как-то так.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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