我试图弄清楚如何在我的 Neo4j.rb Active::Node 模型中定义这些所有者/成员关系。
- 用户可以创建多个团队(并成为这些团队的“所有者”)
- 用户可以获取他们创建的团队
- 团队有一个所有者(用户)和许多成员(其他用户)
- 所有者可以将其他用户添加为团队成员
- 用户可以获取他们是所有者或成员的所有团队
到目前为止,我有这样的东西,但它不能正常工作,我完全迷失了。
class User
include Neo4j::ActiveNode
has_many :out, :my_teams, model_class: 'Team'
end
class Team
include Neo4j::ActiveNode
property :name, type: String
has_one :in, :owner, model_class: 'User'
end
user = create(:user)
team = build(:team)
user.my_teams << team
expect(team.owner).to eq user