2016-11-14 1 views
0

J'utilise V3 py2neo pour connecter la base de données Neo4jnoeud lié au nœud existant py2neo ogm

mon modèle ogm:

class User(GraphObject): 
    __primarykey__ = "username" 

    username = Property() 
    password = Property() 

    ppi_graph = RelatedTo(Graph, "PPI_Graph") 

class Graph(GraphObject): 
    __primarykey__ = "name" 

    name = Property() 
    date = Property() 

    node = RelatedTo(Node) 
    user = RelatedFrom(User,"PPI_Graph") 

class Node(GraphObject): 
    __primarykey__ = "name" 

    name = Property() 

    ppigraph = RelatedFrom(Graph, "HAVE_NODE") 
    related = Related(Node, "Related") 

première méthode:

utilisateur trouver, créer un nouveau graphique, ajouter utilisateur à grader graph.user.add()

graph #connection to neo4j db 
user = User.select(graph, username).first() 
gr = Graph() 
gr.name = "graph" 
gr.date = "today" 
gr.user.add(user) 
graph.push(gr) 

t ses données de poussée de la méthode à base de données

deuxième méthode:

utilisateur trouver, créer un nouveau graphique, ajouter le graphique à l'utilisateur user.graph.add()

graph #connection to neo4j db 
user = User.select(graph, username).first() 
gr = Graph() 
gr.name = "graph" 
gr.date = "today" 
user.ppi_graph.add(us) 
graph.push(us) 

cette méthode erreur de relance quand ajouter ppi_graph à l'utilisateur:

related_object = self.related_class.wrap(node) 
AttributeError: type object 'Graph' has no attribute 'wrap' 

pourquoi je ne peux pas ajouter un nouveau graphique à l'utilisateur trouvé?

Répondre

1

Graph et Node sont des classes core py2neo, vous ne devriez probablement pas utiliser ces noms pour définir vos propres classes, de peur que ce genre de confusion ne se produise.