Предупреждение: Total Rails Newb (TRN). Это должен быть довольно простой вопрос, поэтому я надеюсь, что кто-то может сэкономить пару минут, чтобы помочь пролить свет.
Допустим, у меня есть следующие модели: пользователь, группа и участник
У пользователя может быть много групп (скажем, друзей, семьи и т. Д.)
В группе может быть много участников, а именно других пользователей.
Как бы я это структурировал?
Сначала я попробовал это:
class User < ActiveRecord::Base
has_many :groups
has_many :groups, :through => :members
end
class Groups < ActiveRecord::Base
has_many :users, :through => :members
belongs_to :user
end
class Member < ActiveRecord::Base
belongs_to :group
belongs_to :user
end
Однако, это дало мне ошибку в User, поэтому я изменил
has_many :groups, :through => :members
до
has_many :memberships, :through => :members, :source => :groups
По-прежнему появляется ошибка об отсутствии связи, когда я пытаюсь сделать
group = Group.new
group.user.new