2016-07-08 6 views
1

Ich habe einen ActiveNode wie folgt aus:neo4jrb - Speichern ActiveRel Eigenschaft von Knoten

class Nodeexample 
    include Neo4j::ActiveNode 

    property :name 

    validates :name, :presence => true 

    has_many :in, :nodeexamples, rel_class: :SomeRel 

end 

und ein ActiveRel Modell wie folgt aus:

class SomeRel 
    include Neo4j::ActiveRel 

    property :some_number, type: Float 

    from_class :Nodeexample 
    to_class :Nodeexample 

    type :SOME_REL 
    validates :some_number, :presence => true 

end 

Ich versuche, herauszufinden, wie die "hinzufügen some_number“Eigenschaft im ActiveRel Modell:

node1 = Nodeexample.new(name:"node1") 
node2 = Nodeexample.new(name:"node2") 

#how can I add the "some_number" property in the ActiveRel class from here? 
node1.nodes << node2 

node1.save 

der einzige Weg, ich weiß, ist durch die beiden Knoten zuvor zu speichern und sie die Beziehung retten Schiff, aber ich möchte alle auf einmal speichern, ist es möglich? Es ist 100 Knoten seltsam speichern und dann 500 Beziehungen speichern :(

Antwort

0

Sie sollten diesen in der Lage sein zu tun, mit der create Methode:

node1 = Nodeexample.new(name:"node1") 
node2 = Nodeexample.new(name:"node2") 

node1.nodes.create(node2, some_number: 123) 

Es soll keinen Bedarf an node1.save sein, wenn entweder << oder create

+0

Es hat funktioniert, danke :) –

+0

Großartig! Könnten Sie die Antwort als akzeptiert markieren? –

Verwandte Themen