В моей модели домена я предприятие под названием User
, и я создаю новый узел этого типа таким образом:Neo4php REST API создает узел, как «по умолчанию»
public static function register(User $user){
if(!$user->node)
$user->node = new Node(Neo4jClient::client());
try {
$user->node->setProperty('__type__', TYPE_USER);
$user->node->setProperty('username', $user->getUsername());
$user->node->setProperty('password', $user->getPassword());
$user->node->setProperty('name', $user->getName());
$user->node->setProperty('age', $user->getAge());
$user->node->setProperty('location', $user->getLocation());
$user->node->setProperty('website', $user->getWebsite());
$user->node->setProperty('about', $user->getAbout());
$user->node->setProperty('rating', $user->getRating());
$user->node->save();
$user->setId($user->node->getId());
$userIndex = new Index(Neo4jClient::client(), Index::TypeNode, TYPE_USER);
$userIndex->add($user->node, 'username', $user->username);
return true;
} catch (Exception $e){
return false;
}
}
И, узел получает созданный в базе данных, и все в порядке. За исключением ... таким образом, узел создается как «узел по умолчанию», как если бы я использовал, например, cypher CREATE n
. На самом деле я хочу создать узел определенного типа, как CREATE (n:User)
, но без фактического использования cypher напрямую.
Любая идея, как это может быть достигнуто?
Хм, я получаю 'Призыв к неопределенным метод обывателя \ Neo4j \ Client :: makeLabel()' ошибка. – InProgress
Я только что проверил и в 'neo4jphp.phar', который я использую (последний), нет класса Label. – InProgress
PHAR очень устарел и устарел в следующей версии neo4jphp. Пожалуйста, используйте Composer для установки библиотеки. –