Я пытаюсь понять, как определить эти отношения владельца/члена в моих моделях 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