Я работаю Neo4j из PHP. Для генерации поля uuid в узлах я использую: neo4j-uuid . Я также использую: graphaware / neo4j-php-ogm , когда я создаю узел, я не возвращаю значение, назначенное полю UUID, мне нужно сделать новый запрос, чтобы получить это значение, мне нужно для автоматического увлажнения значения UUID при создании объекта, так же, как гидратируется идентификатор.
Как говорится @ bruno-peres, значение uuid автоматически не гидратируется, поэтому я вызываю метод обновления EntityManager
$this->em->persist($entity); $this->em->flush(); $this->em->refresh($entity); var_dump($p->getUuid())
Из GraphAware Neo4j UUID Github Repo :
Если вы создадите узел и вернете его немедленно, его содержимое не будет отражать изменения, выполненные обработчиками событий транзакции, такими как эта один - таким образом, UUID не будет доступен. Отдельный звонок должен быть сделано, чтобы получить UUID.
То есть: это ожидаемое поведение. В настоящее время вы должны сделать новый запрос, чтобы получить узел со сгенерированным свойством UUID.