我有两个关系m:n类型,用于将表Users
与表Videos
相关联。我通过这些行命令创建它:
rails generate migration users_comments_videos
rails generate migration users_views_videos
在文件user.rb和videos.rb中,我分别添加了说明:
has_and_belongs_to_many :users
has_and_belongs_to_many :videos
这两条指令对我创建的两种关系都有效吗?
答案 0 :(得分:2)
选择不同的关联名称,然后指定模型。
user.rb
class User
has_many :comments
has_many :views
has_many :comment_videos, :through => :comments, :source => 'Video'
has_many :view_videos, :through => :views, :source => 'Video'
end
video.rb
class Video
has_many :comments
has_many :views
has_many :comment_users, :through => :comments, :source => 'User'
has_many :view_users, :through => :views, :source => 'User'
end