2016-07-06 17 views
0

Ich möchte einen Knoten basierend auf dem Argument in Func übergeben erstellen. In dieser createRelation-Funktion ist ein Knoten als "Benutzer" bekannt, aber ein anderer Knoten ist möglicherweise vorhanden oder nicht. Abhängig von der Art der Beziehung, die ich erstellen möchte, überprüfe ich, ob Knoten dieses Typs existieren, wenn nicht, erzeuge und erstelle dann eine Beziehung. Zum Beispiel könnte ein neuer Knoten ein Buch oder ein Auto sein.Erstellen von Knoten in py2neo mit Funktionsaufruf

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) 

Ich weiß Knoten Eigenschaft kann als Argument übergeben in einer verwendet werden, indem innerhalb erklärt {}, aber die gleiche ist für den Knoten nicht funktioniert

Antwort

0

Sieht aus wie dynamische Etiketten in CREATE (und sehr wahrscheinlich MERGE) Aussagen aren't supported.

Das heißt, ich bin nicht sicher, ob ein Etikett mit dem SET-Befehl das Hinzufügen auf die gleiche Weise eingeschränkt ist. Obwohl das natürlich viel weniger nützlich sein wird, weil Ihre MERGE größtenteils nutzlos sein wird, würde ich mir vorstellen, dass Sie viele Duplikate haben würden.

Verwandte Themen