def test_can_create_and_delete_relationship(self): ab = Relationship(Node(), "KNOWS", Node()) self.graph.create(ab) assert isinstance(ab, Relationship) assert remote(ab) assert self.graph.exists(ab) self.graph.delete(ab | ab.start_node() | ab.end_node()) assert not self.graph.exists(ab)
def test_can_create_relationship(self): a = Node("Person", name="Alice") b = Node("Person", name="Bob") r = Relationship(a, "KNOWS", b, since=1999) with self.graph.begin() as tx: tx.create(r) assert remote(a) assert remote(b) assert remote(r) assert r.start_node() == a assert r.end_node() == b
def test_can_create_nodes_and_relationship_4(self): self.graph.delete_all() with self.graph.begin() as tx: a = Node() b = Node() c = Node() ab = Relationship(a, "TO", b) bc = Relationship(b, "TO", c) ca = Relationship(c, "TO", a) tx.create(ab | bc | ca) assert remote(a) assert remote(b) assert remote(c) assert remote(ab) assert ab.start_node() == a assert ab.end_node() == b assert remote(bc) assert bc.start_node() == b assert bc.end_node() == c assert remote(ca) assert ca.start_node() == c assert ca.end_node() == a assert order(self.graph) == 3 assert size(self.graph) == 3
def test_can_create_nodes_and_relationship_3(self): self.graph.delete_all() with self.graph.begin() as tx: a = Node("Person", name="Alice") b = Node("Person", name="Bob") r = Relationship(a, "KNOWS", b, since=1999) tx.create(a) tx.create(b) tx.create(r) assert remote(a) assert remote(b) assert remote(r) assert r.start_node() == a assert r.end_node() == b assert order(self.graph) == 2 assert size(self.graph) == 1
FLAGS = str(data['flags']) com_node = graph.find_one(label='COMPANY', property_key='entname', property_value=entname) if not com_node: com_node = Node('COMPANY') com_node['entname'] = entname com_node['regcap_CNY'] = regcap_CNY com_node['FLAGS'] = FLAGS graph.create(com_node) else: com_node['regcap_CNY'] = regcap_CNY graph.push(com_node) if holder_label == 'COMPANY': holder_node = graph.find_one(label='COMPANY', property_key='entname', property_value=holder) if not holder_node: holder_node = Node('COMPANY') holder_node['entname'] = holder holder_node['FLAGS'] = FLAGS graph.create(holder_node) else: holder_node = graph.find_one(label='PERSON', property_key='name', property_value=holder) if not holder_node: holder_node = Node('PERSON') holder_node['name'] = holder holder_node['FLAGS'] = FLAGS graph.create(holder_node) rel = Relationship(holder_node, 'Share', com_node) rel['money_CNY'] = money_CNY rel['FLAGS'] = FLAGS graph.merge(rel) print(i+1, rel.start_node(), rel.relationships(), rel.end_node())
if not exists_rel: agg_rel = Relationship(non_agg_node, "PUBLISHED", agg_node, measure=1) relationships.append(agg_rel) tx = aggregated_graph.begin() for agg_node in aggregated_nodes: tx.create(agg_node) tx.commit() tx = aggregated_graph.begin() for non_agg_node in non_aggregated_nodes: tx.create(non_agg_node) tx.commit() i = 0 for agg_rel in relationships: i += 1 try: tx = aggregated_graph.begin() tx.create(agg_rel) tx.commit() print "Created Relationship ", i except: print "Start Node: ", agg_rel.start_node() print "End Node: ", agg_rel.end_node() print "Measure: ", agg_rel['measure']
# coding=utf-8 from py2neo import Node, Relationship #节点和关系 a = Node("Person", name="Alice") b = Node("Person", name="Bob") ab = Relationship(a, "KNOWS", b) print a print a.fromkeys('Person') print a.properties print b print ab.type print ab.start_node() print ab.end_node() thenode = set([]) def buildNodes(node): data = { "id": str(node[0].properties), "label": next(iter(node[0].labels())) } # print node[0] thenode.add(str(node[0].properties)) print "label", next(iter(node[0].labels())) return {"data": data} startnode = set([]) endnode = set([])