Этап
Не будет выполнена
Тип
Исследование
Приоритет
Обычный
Трудоемкость
Обычная
Создана
Дата создания
4 года назад
Назначена
Обновлена
4 года назад

Обычные Entity не обязывают переопределять конструктор и серилизатор для поддержки функционала сохранения доктриной. Хотелось чтобы мои работали похожим с доктриной способом.

Так как наш проект уже завязан с doctrine, можно просто использовать её движок аннотаций doctrine/annotations (не забыть указать пакет в composer.json явно)

Help: https://www.doctrine-project.org/projects/doctrine-annotations/en/1.13/custom.html#custom-annotation-classes

Создаем Аннотации @JsonEntity, @JsonEntity\Field Вешаем листенер на PostLoad например, который для каждого класса под аннотацией заберет список сериализуемых атрибутов, и десериализует их.

Не уверен, что он сможет создать обратные сериализаторы и инъектировать их в аннотированную энтити. А события preSerialize нету. да и postLoad походе lifecycleCallback, а не event.

В общем интересная идея на реализацию, но непростая

Панель управления