【问题标题】:Py2neo updateing existing nodePy2neo 更新现有节点
【发布时间】:2021-04-09 12:59:52
【问题描述】:

我一直在尝试使用 py2neo 更新现有节点。 一些值得一提的事情:

OS: Arch Linux x86_64
python version: 3.8
py2neo version: 2021.0.1
ne4j version: 4.2.1
flask version: 1.1.2
Application is running inside a docker container, the actual flask website is on port 5000, neo4j interface is on port 7474 and flask connects to port 7687 (neo4j)

以下是我尝试过的几种方法:

1)

def update_node(self, node_name: str, node_group: str, property_update: dict):
    return self.name_search_person(node_name=node_name, node_group=node_group).update(**property_update)
def update_node(self, node_name: str, node_group: str, property_update: dict):
        node_to_update = self.name_search_person(node_name=node_name, node_group=node_group)
        if node_to_update:
            node_to_update.update(**property_update)
            self.g.push(node_to_update)
        del node_to_update
        return 'successfully updated node'

在第二种方法中,我尝试了以下函数调用:

graph_db.update_node(node_name='Andrei', node_group='Person', property_update={'name': t['Updated']})

(这只是返回 NameError: name 't' is not defined(我见过这个Here

graph_db.update_node(node_name='Andrei', node_group='Person', property_update={'name':'Updated'})

我是在函数调用上做错了什么,还是实际的更新函数由于某种原因无法正常工作?

【问题讨论】:

    标签: python docker flask neo4j py2neo


    【解决方案1】:

    显然解决方案是从函数调用中删除“t”

    graph_db.update_node(node_name='Andrei', node_group='Person', property_update={'name': t['Updated']}

    所以现在是:

    graph_db.update_node(node_name='Andrei', node_group='Person', property_update={'name': ['Updated']}
    

    老实说 IDK 为什么它不能与其他函数调用一起使用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-24
      • 2021-12-21
      • 1970-01-01
      相关资源
      最近更新 更多