alestro
@alestro

Lazy load для доменного объекта как реализовать?

Суть в следующем: есть доменный объект, допустим User, у него есть private свойство images должно содержать в себе коллекцию изображений, устанавливается через сеттер set_images(ImagesCollection $images)
Так вот, нужно реализовать ленивую загрузку. На данный момент есть некий класс Lazy интерфейс оного подразумевает только один метод load. Таким образом когда вызывается метод $user->images();
подгружается нужная коллекция объектов и все готово. Но как мне устанавливать этот самый Lazy в private свойство images тут либо писать отдельный сеттер по типу set_images_lazy(Lazy $lazy)
либо добавить общее для всех объектов DomainObject свойство Lazy, которое будет массивом хранящим имя свойства в виде ключа и значение - экземпляр lazy. Как стоит поступить? Или возможно есть более кашерное решение?
  • Вопрос задан
  • 184 просмотра
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Или возможно есть более кашерное решение?


Прокси объекты.

https://github.com/Ocramius/ProxyManager

Например так делает доктрина.
Ответ написан
Ваш ответ на вопрос

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

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