Добавить свойство с несколькими значениями в индекс с помощью py2neo - Neo4j

Я пытаюсь сохранить свойство с несколькими значениями с помощью py2neo в базе данных Neo4j.

Мой код выглядит примерно так:

names = ["Hello", "Bye"]

batch.add_to_index( neo4j.Node, "NAME", "names", names , mynode )

К сожалению, проверка результирующего индекса Lucene с помощью lukeall и выполнение поиска, похоже, не работает, и кажется, что все сохраняется в виде строки, например: ["Привет", "Пока"] Есть ли способ правильно сохранить его, чтобы он мог получить индекс для всех различных значений?

Заранее спасибо!


person Toni Hermoso Pulido    schedule 05.02.2014    source источник


Ответы (1)


Как сказано в документации, метод add_to_index принимает один ключ и одно значение в качестве входных данных. Поэтому я думаю, что вам нужно дважды добавить узел в индекс, если вы хотите индексировать два names.

# add_to_index(cls, index, key, value, entity)

names = ["Hello", "Bye"]

for n in names:
    batch.add_to_index(neo4j.Node, "NAME", "name", n, mynode)

batch.submit()
person Martin Preusse    schedule 05.02.2014
comment
Правильно, в этом контексте поддерживаются только одиночные значения. - person Nigel Small; 06.02.2014
comment
Спасибо. Это сработало! Просто примечание: вам нужно продолжать устанавливать свойство как массив: batch.set_property( mynode, 'name', names ) - person Toni Hermoso Pulido; 07.02.2014