preUpdate
и preRemove
, но вместо внесения изменений непосредственно просто складываем их где-то в классе-обработчикеEntityManager::flush()
в этом случае. Я в своих проектах в обработчике postFlush
, в случае если были какие-то изменения, ставил флаг $flushRequired
. Сам класс обработчика подписывал на событие kernel.terminate и в этом обработчике ставил:if ($this->flushRequired) {
$this->em->flush();
}
Yii::$app
(такой же есть и в Laravel, кстати), откуда все подряд классы пытаются дёргать информацию вместо использования честного IoC (inverse of control, часть принципов SOLID). Yii::$app
) - открывает недисциплинированным программистам возможности делать во views то что там делать нельзя (никогда не видели запросов к базе из views?)/graphql/query/
.X-Instagram-GIS
с форматом значения, который я описал выше. Значение передаваемое в md5()
имеет формат gis:vars
где:gis
- это токен, он берётся из переменной window._sharedData
по ключу rhx_gis
, имеет вид md5 хэшаvars
- это содержимое параметра запроса variables
в формате jsondebug:container
, не помню есть ли она в 3-ей. Но лично я предпочитаю просто искать соответствующий метод в откомпилированном контейнере и смотреть что происходит по факту.
Мы как раз недавно вот здесь обсуждали схожий вопрос, возможно вам будет интересно.