@symfony_php

Страница 821 из 1418
Sergey
05.04.2018
18:03:35
ну то есть persist НЕ надо вызывать при изменении данных сущности, так?

1. где хранишь бизнес логику (уточню - ложишь ли логику в сущности) 2. где делаешь flush
а теперь внимание - вопрос был ГДЕ ты делаешь flush а не когда

Shmaltorhbooks
05.04.2018
18:03:59
Зачем?

Sergey
05.04.2018
18:04:18
покажи мне место в документации которое такое говорит

Google
Shmaltorhbooks
05.04.2018
18:04:58
Зачем?

Так

Vit
05.04.2018
18:05:15
сеттеры, что щас будет

Shmaltorhbooks
05.04.2018
18:05:17
Куда?

Куда?

Vladislav
05.04.2018
18:05:50
лел

Bohdan
05.04.2018
18:05:51
сеттеры, что щас будет
видели, но здесь чат по симфе, она важнее)

Vladislav
05.04.2018
18:05:54
глянь что делает персист

Sergey
05.04.2018
18:05:59
сеттеры, что щас будет
тут судя по всему не надо пугать человека... тут вон с UoW надо разобраться еще

Vladislav
05.04.2018
18:06:13
em -> persist != git commit

Shmaltorhbooks
05.04.2018
18:06:25
Так стейт куда сохраняется?

И где он был до этого?

И какая разница между этими двумя местами?

Google
Sergey
05.04.2018
18:06:50
ну UoW парадигма, че ты не понимаешь чтоли?

Shmaltorhbooks
05.04.2018
18:07:11
А без persist их в памяти нету?

Vladislav
05.04.2018
18:07:20
если так считать, то получается что все переменные в память сохраняются)))

Petr
05.04.2018
18:07:50
к тебе на работу приходит джун и спрашивает: как работает persist и flush, когда что вызывать. как ты ему это объяснишь?

Shmaltorhbooks
05.04.2018
18:08:07
И если нету, то где они?

Sergey
05.04.2018
18:08:20
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/working-with-objects.html#persisting-entities

короч читай и изучай

Shmaltorhbooks
05.04.2018
18:08:51
Это вопрос или утверждение?)

Sergey
05.04.2018
18:08:55
в частности что такое "MANAGED entity"

тут два варианта: - не знаешь - не можешь объяснить

а как говорится, если ты не можешь что-то объяснить. значит ты это не понимаешь

Vladislav
05.04.2018
18:10:41


если ты так понимаешь, то это не правильно

не плохое, а вообще неок

персист не сохраняет ниче вообще

шта

шо ты несешь, почитай

ничего он не сохраняет

ну камон

Shmaltorhbooks
05.04.2018
18:11:51
А до персиста где оно хранится?

Google
Sergey
05.04.2018
18:11:53
можем на инглише, итог будет одинаковый. persist и flush работают не так же как commit и push

Shmaltorhbooks
05.04.2018
18:11:57
Если не в памяти?

Та понятно

Icewild
05.04.2018
18:12:18
но изменения при персисте еще не было

Sergey
05.04.2018
18:12:20
просто птому что commit подразумевает создание коммита, а persist лишь помечает "следи за этим объектом". И если ты уже загрузил объект через доктрину она уже за ним следит

Vladislav
05.04.2018
18:12:24


Shmaltorhbooks
05.04.2018
18:12:30
Где именно хранится стейт до persist?

Sergey
05.04.2018
18:12:59
именно по этой причине придумали unit f work

что бы эмулировать что это не так

вся соль доктрины и UoW в том что бы притвориться что объекты все время лежат в памяти, и ты с ними работаешь как просто с объектами.

Shmaltorhbooks
05.04.2018
18:13:56
А где?

Есть три места, где он может хранится - в базе, в памяти и где-то ещё

Где это "где-то ещё"?

Sergey
05.04.2018
18:14:42
но все же ответь на вопрос.... где ты делаешь flush

Shmaltorhbooks
05.04.2018
18:14:47
На бумаге?

Тут?)

Sergey
05.04.2018
18:15:59
flush это не "завершение" а "сохранение изменений". То есть вычисление diff изменений, формирование запросов и коммит транзакции

persist это лишь "добавьте плиз эту сущность в UoW"

началось все с того что ты делаешь flush после persist хотя я спрашивал "где" ты делаешь flush. Ну и исходя из формулировки для апдейтов ты тоже делаешь persist. а это привело к дальнейшей дискуссии

Страница 821 из 1418