neo4jrb - 从节点保存ActiveRel属性

时间:2016-07-08 00:15:42

标签: ruby-on-rails neo4j neo4j.rb

我有一个像这样的ActiveNode:

class Nodeexample
  include Neo4j::ActiveNode

  property :name

  validates :name, :presence => true

  has_many :in, :nodeexamples, rel_class: :SomeRel

end

和这样的ActiveRel模型:

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

我试图找出如何添加" some_number" ActiveRel模型中的属性:

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

我知道的唯一方法是首先保存两个节点并保存关系,但我想一次保存所有,是否可能?奇怪的是节省100个节点,然后保存500个关系:(

1 个答案:

答案 0 :(得分:0)

您应该可以使用create方法执行此操作:

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

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

使用node1.save<<

时,不需要create