2016-06-25 3 views
0

У меня есть узел, и я хочу добавить одно свойство property_x, значение которого я хочу быть {"year1":value, "year2":value}. Создание нескольких узлов за каждый год не требуется, так как мне нужны эти значения в моей обработке вместе.Как я могу использовать py2neo для хранения словаря как одного значения свойства для одного ключа свойства узла в neo4j?

+0

Пробовал редактировать, но вопрос очень расплывчатый и нуждается в более подробной информации, если вы надеетесь, что на него будет дан ответ. – AlBlue

ответ

1

Neo4j поддерживает только определенные виды свойств (docs):

... Существуют ограничения относительно того, какие типы значений могут быть использованы в качестве значений свойств. Допустимые типы значений следующим образом:

  • номера: Оба целочисленных значений, с мощностью как Long типа в Java, и плавающей точкой, с мощностью, как в Java Double.

  • Booleans.

  • Строки.

  • Массивы основных типов выше.

Вы, следовательно, не может установить словарь как свойство. Вы можете попробовать использовать json.dumps для преобразования словаря в строку JSON и сохранения строки. Однако это будет означать, что вы не можете легко использовать содержимое объекта при записи запросов, и при извлечении узла вам понадобится json.loads.

В качестве альтернативы вы можете сделать объект отдельным узлом со свойствами year1, year2 и т. Д. И связать его с первым узлом с отношением.

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