使用函数调用

时间:2016-07-06 22:43:11

标签: neo4j py2neo

我想根据func中传递的参数创建一个节点。在此createRelation函数中,一个节点称为“用户”,但其他节点可能存在也可能不存在。根据我想要创建的关系类型,我检查该类型的节点是否存在,如果不存在则创建关系。例如,新节点可以是书籍或汽车。

def createRelationship(self, nodeName, value):

        query = """
        MATCH (u:User {username: {you}})
        MERGE (b:nodeName {name: {value}})
        ON CREATE SET b.name = {value}
        CREATE UNIQUE (u) - [:OWNS] -> (b)
        """

        return graph.cypher.execute(query, you=self.username, nodeName=nodeName, value=value)

我知道node属性可以用作在{}中声明的参数,但是同样不适用于节点

1 个答案:

答案 0 :(得分:0)

在CREATE(很可能是MERGE)语句aren't supported中看起来像动态标签。

那就是说,我不确定用SET命令添加标签是否也以同样的方式受到限制。虽然很明显,因为你的MERGE很大程度上没用,但我觉得你会有很多重复的东西。