node1 = Node("公司",name="绩溪县瑞泰置业有限公司")
node2 = Node("公司",name="安徽省文一投资控股集团经开置业有限公司")
node3 = Node("公司",name="安徽嘉泽置业有限公司")
node4 = Node("公司",name="安徽省文一投资控股集团定远置业有限公司")
node5 = Node("公司",name="安徽省文一资产管理有限公司")
rel2 = Relationship(node1, "对外投资", node2)
rel3 = Relationship(node1, "对外投资", node3)
rel4 = Relationship(node1, "对外投资", node4)
rel5 = Relationship(node1, "对外投资", node5)
tx.merge(node1);
这几天研究neo4j,使用了一个python的py2neo包,其中有一条merge语句,代码如上,本意是在neo4j数据库中查找一个label名为公司,属性name为绩溪县瑞泰置有限公司的节点,如果不存在则创建,然后运行发现报错,如下,说缺少两个参数,
上网查了很多教程后基本上格式都是那样,那么回过头看报错,右点击merge函数查看定义源码后发现了问题,原来是新版本库函数改写了的原因,py2neo 3版本基本上都是如上的写法,而py2neo 4版本要求改函数添加上两个参数,即label名和属性名,修改如下
tx.merge(node1,primary_label='公司',primary_key='name');
运行发现即可。