em->persist или добавить в persisted collection - в статье говорится, что все сохранения не должны быть в сервисах, т.е. вызывать $repo->add($bannedUser) или $em->persist($bannedUser) совсем не ок, тогда остается вариант через persisted collection - модератора. Тут ок, сохранили - но что делать если нужно другому модератору разбанить юзера? вытащить $bannedUser через свой репозиторий? как-то неявная связь на уровне бд получается... или может вытащить через модератора который его банил? понял про что я?
> Let’s start with the technical guidance – always get an entity. At least one. Also, don’t add any objects to the session or unit of work explicitly – rather, have some other already persistent domain entity create the new entity and add it to a collection property.
moderator->unban(BannedUser user). Или просто this.bans.remove(bannedUser), если логики нет особо.
Обсуждают сегодня