вернуть значение uuid в узлах, созданных в Neo4j ogm - PullRequest
0 голосов
/ 04 мая 2018

Я работаю Neo4j из PHP. Для генерации поля uuid в узлах я использую: neo4j-uuid . Я также использую: graphaware / neo4j-php-ogm , когда я создаю узел, я не возвращаю значение, назначенное полю UUID, мне нужно сделать новый запрос, чтобы получить это значение, мне нужно для автоматического увлажнения значения UUID при создании объекта, так же, как гидратируется идентификатор.

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Как говорится @ bruno-peres, значение uuid автоматически не гидратируется, поэтому я вызываю метод обновления EntityManager

$this->em->persist($entity);
$this->em->flush();
$this->em->refresh($entity);
var_dump($p->getUuid())
0 голосов
/ 04 мая 2018

Из GraphAware Neo4j UUID Github Repo :

Если вы создадите узел и вернете его немедленно, его содержимое не будет отражать изменения, выполненные обработчиками событий транзакции, такими как эта один - таким образом, UUID не будет доступен. Отдельный звонок должен быть сделано, чтобы получить UUID.

То есть: это ожидаемое поведение. В настоящее время вы должны сделать новый запрос, чтобы получить узел со сгенерированным свойством UUID.

...