我有用户。每个用户都可以创建旅程。当用户创建旅程时,其他用户可以加入join。如何创建社团?
在user_model中:
has_many :journeys
在journey_model中:
belong_to :user
我可以添加到journey_model:has_many :users中吗
发布于 2015-10-25 17:12:26
#app/models/user.rb
class User < ActiveRecord::Base
has_many :created_journeys, class_name: "Journey", foreign_key: :user_id
has_and_belongs_to_many :journeys
end
#Need a table journeys_users - journey_id | user_id
#app/models/journey.rb
class Journey < ActiveRecord::Base
belongs_to :owner, class_name: "User", foreign_key: :user_id
has_and_belongs_to_many :users
end这将允许您调用以下内容:
@user = User.find params[:user_id]
@journey = @user.journeys.find params[:id]
@journey << current_user多对多
你问题的症结在于你正在寻找一个多到多的联系。
这有两种味道:
has_and_belongs_to_manyhas_many :through这两项工作都是为了提供类似的结果,只是以不同的方式:

如果需要的话我可以解释更多。
https://stackoverflow.com/questions/33332078
复制相似问题