Ruby on rails 如何关联模型?
我正在与用户和组构建一个ROR应用程序,我希望能够将它们与一个称为成员身份的关联模型相链接 我的问题是,当我尝试创建一个只有一个成员的组时,新组的Ruby on rails 如何关联模型?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在与用户和组构建一个ROR应用程序,我希望能够将它们与一个称为成员身份的关联模型相链接 我的问题是,当我尝试创建一个只有一个成员的组时,新组的members数组总是空的 我试着创建这样一个组: def create (user) @group = Group.new(create_group_params) user.join(@group) user.save @group.save end 但是打印时,@group.members是空的。如何使用户成为组的成员 以下是我
members
数组总是空的
我试着创建这样一个组:
def create (user)
@group = Group.new(create_group_params)
user.join(@group)
user.save
@group.save
end
但是打印时,@group.members
是空的。如何使用户成为组的成员
以下是我的模型:
Group.rb
class Group < ActiveRecord::Base
has_many :passive_memberships, class_name: "Membership",
foreign_key: "club_id",
dependent: :destroy
has_many :members, through: :passive_memberships, source: :member
end
类组
User.rb
class User < ActiveRecord::Base
has_many :active_memberships, class_name: "Membership",
foreign_key: "member_id",
dependent: :destroy
has_many :memberships, through: :active_memberships, source: :club
def join(group)
active_memberships.create(club_id: group.id)
end
end
class用户
会员资格.rb
class Membership < ActiveRecord::Base
belongs_to :member, class_name: "User"
belongs_to :club, class_name: "Group"
validates :member_id, presence: true
validates :club_id, presence: true
end
类成员资格
哦。我必须先保存组,然后用户才能加入
def create (user)
@group = Group.new(create_group_params)
@group.save
user.join(@group)
user.save
end
哦。我必须先保存组,然后用户才能加入
def create (user)
@group = Group.new(create_group_params)
@group.save
user.join(@group)
user.save
end