【问题标题】:Added a node to a graph connected via prompt with py2neo but MATCH (n) RETURN (n) shows empty graph in Neo4j browser向通过 py2neo 提示连接的图形添加了一个节点,但 MATCH (n) RETURN (n) 在 Neo4j 浏览器中显示空图形
【发布时间】:2020-12-10 01:10:45
【问题描述】:

我正在使用 py2neo 迈出第一步。

我通过 Neo4j Desktop 创建了一个图表

DBMS 名称:Neo4j

密码:Neo4j

我已经开始了。然后我用 Neo4j 浏览器打开它,它显示我以用户 neo4j 连接到 bolt://localhost:7687

然后,我通过输入提示符连接到它

graph = Graph("bolt://localhost:7687", user="neo4j", password="Neo4j")

>>> graph
Graph('bolt://neo4j@localhost:7687')

我创建了一个节点

nicole = Node("person", name="Nicole", age=24)

>>> nicole
Node('person', age=24, name='Nicole')

然后我在我的 Neo4j 浏览器中,如果我输入查询,我希望看到我的节点:

MATCH (n) RETURN (n)

但它什么也没返回。

  1. 为什么?

  2. 另外,如果在我的 Chrome 浏览器 URL 栏中输入 http://localhost:7474/,它会返回与 Neo4j 浏览器相同的视图(MATCH (n) RETURN (n) 即使在这里也不起作用)

但如果在我的 Chrome 浏览器 URL 栏中输入 http://localhost:7687/,它会返回一个只有消息的空窗口

不是 WebSocket 握手请求:缺少升级

为什么即使在第二种情况下我也没有得到类似 Neo4j 浏览器的视图?

【问题讨论】:

  • 您刚刚创建了一个对象。要在图中创建节点,需要执行 graph.create(nicole)。
  • 谢谢@Rajat,输入答案,我会将其标记为正确。
  • 谢谢.. 我已将其添加为答案

标签: python neo4j py2neo


【解决方案1】:

如cmets中所说,需要使用graph.create()将对象保存到数据库中。

graph = Graph("bolt://localhost:7687", user="neo4j", password="Neo4j")

>>> graph
Graph('bolt://neo4j@localhost:7687')
nicole = Node("person", name="Nicole", age=24)

>>> nicole
Node('person', age=24, name='Nicole')

>>> graph.create(nicole)

您可以阅读更多here

【讨论】:

    【解决方案2】:

    您的代码只是创建了一个本地节点。要在图中创建它,请使用:

    graph.create(nicole)
    

    然后它将出现在您的浏览器查询中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-31
      • 1970-01-01
      • 1970-01-01
      • 2014-03-11
      • 2018-07-12
      • 2017-05-06
      相关资源
      最近更新 更多