2014-10-15 3 views
0

Я использую Neo4j PHP для случая образца, который создает индексы и добавляет узлы к нимсоздания именованного индекс Neo4j

$client = new Client(); 
$actors = new NodeIndex($client, 'actors'); 
$juhichawla = $client->makeNode()->setProperty('name', 'Juhi Chawla')->save(); 
$actors->add($juhichawla, 'name', $juhichawla->getProperty('name')); 

и я могу видеть этот показатель, посмотрев на данные по REST API

:GET /db/data/index/node/ 

{ 
    "actors": { 
    "template": "http://localhost:7474/db/data/index/node/actors/{key}/{value}", 
    "provider": "lucene", 
    "type": "exact" 
    } 
} 

Теперь я набухаю загружен ряд актеров, можно ли использовать один и тот же индекс, индекс их, как хорошо, я действительно не имею представления о том, как добавить индексацию (названный индекс актеров) для них, neo4jphp код, который я использую для поиска узлов, полезен, если вы указали индекс в свои данные.

$from = 'shahrukh khan'; 
$client = new Client(); 
$actors = new NodeIndex($client, 'actors'); 

$fromNode = $actors->findOne('name', $from);   
f (!$fromNode) { 
echo "$from not found\n"; 
exit(1); 
} 

ответ

0

Ну, here is the documentation on neo4j indexes и here's the relevant docs for php.

Так что документация предполагает, что ваш код будет выглядеть примерно так:

$nameIndex = new Everyman\Neo4j\Index\NodeIndex($client, 'actors'); 
$nameIndex->save(); 
+0

Но как мне найти содержимое, если у меня уже есть индексы на них, но не назвали индекс, как вы только что показали, может один создайте экземпляр индекса, который находится на сервере, я думаю, что я делаю это ясно. –

+0

В общем случае, если вы создаете индекс, вы можете использовать cypher, и он будет автоматически использовать индекс. Именованные индексы должны быть вызваны по имени в предложении cypher 'start'. Но если вы используете индексы схемы, просто выполните запрос как обычно. – FrobberOfBits

Смежные вопросы