如何通过 rails 控制台创建 Neo4j 关系?

How do I create a Neo4j relationship via the rails console?

我目前正在研究 this tutorial,但在 rails 控制台中创建关系时遇到了困难。我已经阅读了 Neo4jrb 项目文档和 jayway.com 上的博客 post,但仍然无法理解。

我已经创建了一个 rails 站点,我想使用我的 rails 脚本在 Neo4j 数据库中创建团队节点、联赛节点以及它们之间的关系。我有两个模型:

联赛一个

class Team 
include Neo4j::ActiveNode
property :name, type: String

has_one :out, :league, type: :PLAY_IN

end

团队一个

class League 
include Neo4j::ActiveNode
property :name, type: String
property :rank, type: Integer

has_many :in, :teams, origin: :league

end

使用 rails 控制台,我可以使用以下代码创建节点:

League.create(name: "League 2")

如何使用控制台创建模型中定义的两个节点之间的关系?

Here is my code in github. 在此先感谢!

** 编辑 **

已删除:model_class

在维基 ActiveNode 部分的 Associations 标题下有一个在节点之间创建关系的示例,https://github.com/neo4jrb/neo4j/wiki/Neo4j%3A%3AActiveNode#associations。你做 node_a.association_name << node_bteam.league = leagueleague.teams << team 将创建相同的关系,因为您已将它们设置为引用数据库中相同的关系类型和相互方向。

wiki 中有大量的信息,我建议您通读所有现代的东西。不要担心 "Legacy" 部分中的任何内容。 http://neo4jrb.readthedocs.org/en/stable/ but there's still a bit to do. There's also a chat room at https://gitter.im/neo4jrb/neo4j 也正在编写​​新文档,以备您随时讨论。

** 编辑 **

正如 Brian 所指出的,您的 model_class 存在问题。我专注于你是如何做到的,并没有仔细观察模型,请参阅他的评论以获取信息。