Size: a a a

2020 September 24

D

Dmitry in symfony
Павел Г.
И еще вопрос опять таки про "геттеры". Вообще не могу понять как в этом кейсе делать без них:
Есть пользователь - у него аватарка, у пользователя коллекция записей, у записей есть изображения. Кейс удаление пользователя, соответсвенно и изображений. В простом варианте я просто дергаю все изображения и передаю в сервис ихображений, который удаляет физические файлы. Как это можно сделать не собрав изображения - не пойму.
pictureRepo->deleteAllByUserId
источник

D

Dmitry in symfony
ну это образно
источник

👤U

👤 User in symfony
Репозитории же вроде только для выборок?
источник

ПГ

Павел Г. in symfony
👤 User
Можно же выбрать и юзера и его картинки в отдельные коллекции. И по ним пройтись.
Чтобы выдрать в коллекции, нужно чтобы геттер был.
источник

👤U

👤 User in symfony
Операции производить вроде вне них надо?
источник

D

Dmitry in symfony
pictureService->deleteAllByUserId
источник

👤U

👤 User in symfony
Павел Г.
Чтобы выдрать в коллекции, нужно чтобы геттер был.
Картинки знают, кому принадлежат.
источник

👤U

👤 User in symfony
Кто-то не знает, что у него есть картинки =)
источник

👤U

👤 User in symfony
Находим картинки, которые знают о принадлежности. Грохаем файло и сущности.
источник

ПГ

Павел Г. in symfony
Dmitry
pictureService->deleteAllByUserId
Чтобы сервис получил изображения по UserId надо чтобы были геттеры, которые отдадут картинки.
источник

AK

Andrew Kovalyov in symfony
Павел Г.
Чтобы сервис получил изображения по UserId надо чтобы были геттеры, которые отдадут картинки.
или select id from image where user_id = :user_id
источник

D

Dmitry in symfony
Павел Г.
Чтобы сервис получил изображения по UserId надо чтобы были геттеры, которые отдадут картинки.
не понял, зачем ?
источник

👤U

👤 User in symfony
$rep->createBuilder()->...->where('user = :user')
источник

👤U

👤 User in symfony
Просто смотрим не с позиции юзера, а с позиции картинки.
источник

D

Dmitry in symfony
сервис картинок знает об сущности картинка
источник

👤U

👤 User in symfony
Ясен красен у картинки - то геттер есть. У юзера коллекции нет.
источник

D

Dmitry in symfony
репа картинок умеет находить по юзер ид
источник

D

Dmitry in symfony
репа отдаст список в том или ином виде в сервис - сервис вызовет удаление
источник

ПГ

Павел Г. in symfony
Dmitry
репа картинок умеет находить по юзер ид
Ну вот тут вот сложности, хотя я думаю решается заспросом. Картинки прицеплены не только к юзеру, а еще и к его записям. В общем надо больше работать с репозиторием меньше с бизнес объектами...
источник

ПГ

Павел Г. in symfony
Все,примерно понял направление, всем спасибо :) надо писать запрос ><
источник