我正在尝试在顶点中添加多个标签。我发现doc,这是在创建节点时添加多标签的。我尝试了一些查询,以在创建的顶点中添加多标签。
g.V().has('Test', "title", "test1").next().addLabel('BU1')
但这是一个错误
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 432, in result
return self.__get_result()
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 384, in __get_result
raise self._exception
File "/usr/local/lib/python3.6/dist-packages/gremlin_python/driver/resultset.py", line 81, in cb
f.result()
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 425, in result
return self.__get_result()
File "/usr/lib/python3.6/concurrent/futures/_base.py", line 384, in __get_result
raise self._exception
File "/usr/lib/python3.6/concurrent/futures/thread.py", line 56, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.6/dist-packages/gremlin_python/driver/connection.py", line 77, in _receive
self._protocol.data_received(data, self._results)
File "/usr/local/lib/python3.6/dist-packages/gremlin_python/driver/protocol.py", line 106, in data_received
"{0}: {1}".format(status_code, data["status"]["message"]))
gremlin_python.driver.protocol.GremlinServerError: 597: Cannot invoke method range() on null object
答案 0 :(得分:2)
恐怕这些方法在Python中不起作用。文档应该对此更加清晰(为此,我做了一个注释)。在Python中,您只能通过Gremlin语言(无论使用哪种语言,都是与图形进行交互的唯一方法)与图形进行接口,以及您提供的链接中列出的方法,例如{{1} }并非Gremlin语言的一部分-它们恰好是特定于addLabel()
的Java API的。您可以在python中添加多个标签的唯一方法是:
Neo4jGraph
或者我想您可以将脚本发送到服务器以使用文档中的那些Java API方法。我想Neo4j可以(应该?)公开对Gremlin语言的扩展(也许使用g.addV('human::animal')
步骤,大声思考)。如果您想在JIRA中创建问题以进行进一步讨论,则可以考虑这样做。