Size: a a a

2021 January 11

DT

Dmitriy Tkachenko in symfony
меня смутило что в десериалайзер передается желаемый результат как string, а по факту null)
источник

s

s4b0t in symfony
Кто-то пользует RoadRunner в проде? насколько время отклика уменьшается на реальном приложении?
источник

D

Dmitry in symfony
https://habr.com/ru/post/431818/
неплохой тест
источник

s

s4b0t in symfony
не очень похоже на реальный проект
источник

DT

Dmitriy Tkachenko in symfony
возможно по этому пост про тестирование, а не про сравнение на реальном проекте
источник

E

ErickSkrauch in symfony
Добрый день.

Изучаю Doctrine, хочу перейти на неё в проекте Yii2, но не могу решить все возникающие вопросы. Почему-то решения не гуглятся :(

Ключевая проблема такая: как предзагружать связи с учётом контекста? Сценарий следующий: есть список записей. На них смотрит пользователь и мне необходимо вывести для зрителя отметку о том, лайкнул ли он контент или нет. Внутри сущности описывается отношение, что у записи есть список пользователей, кто её лайкнул, равно как и у пользователя есть список записей, которые он лайкнул. Но что с одной стороны, что с другой, мы имеем или n+1, или выборку огромного массива данных по eager.

Как можно предзагрузить данные с учётом ограничений на зрителя?
источник

👤U

👤 User in symfony
Тут, чтобы не плодить суперзапросы к БД, надо грамотно раскидать запросы. Например. Список контента. Получить по ид контента список тех, которые лайкнуты пользователем. Причем, лучше без гидратации. Партиально.
источник

👤U

👤 User in symfony
В общем не пытайтесь создать какую-то серебряную пулю в запросах. Берите минимум данных с минимальными полями.
источник

E

ErickSkrauch in symfony
Т.е. вручную выбирать связи и возвращать какие-то аггрегированные сущности, а не чистые сущности, что используются в репозиториях?
источник

👤U

👤 User in symfony
И да. У вас связь двусторонняя. Таких связей желательно избегать согласно доктриновских же практик. Двунаправленная связь создается тогда и только тогда, когда данные неразрывны и не имеют смысла друг без друга.
источник

👤U

👤 User in symfony
ErickSkrauch
Т.е. вручную выбирать связи и возвращать какие-то аггрегированные сущности, а не чистые сущности, что используются в репозиториях?
На чтение вообще вредно сущности получать. Лучше получать сырые данные и создавать дто.
источник

E

ErickSkrauch in symfony
👤 User
На чтение вообще вредно сущности получать. Лучше получать сырые данные и создавать дто.
Я лишь начинаю свой путь в познании Doctrine и DDD. Можете вкратце пояснить, что в данном случае DTO? Насколько я понимаю, это какая-то обёртка над данными, которая передаётся в слой представления, так?
источник

👤U

👤 User in symfony
Что-то типа того. Есть контент а есть некий дто контента. Вот у дто каким-то способом ставится булево поле было лайкнуто текущим юзером. Как вариант.
источник

👤U

👤 User in symfony
Энтити прежде всего на create update delete использовать лучше. На read можете хоть массив из БД тащить и в дто превращать.
источник

E

ErickSkrauch in symfony
Т.е. в опыте пользования Doctrine вполне нормально выбирать связи вручную? Я долгое время пользовался AR в Yii2, потому это немного непривычно :)
источник

👤U

👤 User in symfony
Сразу оговорюсь. Я не то чтобы шарю в ддд. Могу и ошибаться с методологией. Но то, что не надо юзеру делать некое поле likedmaterials и оттуда драть все материалы это определенно. Лайкнуть я и 1000 могу. А на странице щас 2 из этой 1000. Накой мне вся эта выборка.
источник

I

Ivan in symfony
ErickSkrauch
Т.е. вручную выбирать связи и возвращать какие-то аггрегированные сущности, а не чистые сущности, что используются в репозиториях?
да
источник

E

ErickSkrauch in symfony
Хорошо, спасибо за помощь!
@webuser1337
источник

ЕР

Евгений Ромашкан... in symfony
источник

P

Pavel in symfony
А кто-то настраивал связку x-debug и ngrok?
А то чет у меня когда перехожу по ссылке, которую мне отдает ngrok, точки останова не отлавливаются
источник