多个多对多关系Rails

时间:2014-08-04 21:58:59

标签: ruby-on-rails database many-to-many

我有用户和餐馆

为收藏夹建模 我有一个餐馆用户加入表格,我用来模拟用户是否“收藏”了一家餐馆。

模拟评论 我有一个评论表,引用user_id和restaurant_id与其他一些领域。我应该在这里使用has_many_through吗?那怎么样?

由于这里有多对多的关系,我只是想知道我是否做得对。

1 个答案:

答案 0 :(得分:2)

class User < ActiveRecord::Base
   has_many :favourites
   has_many :reviews
   has_many :restaurants, through: :favourites
end

class Restaurant < ActiveRecord::Base
    has_many :reviews
end

class Favourite < ActiveRecord::Base
    belongs_to :user
    belongs_to :restaurant
end

class Reviews < ActiveRecord::Base
    belongs_to :restaurant
    belongs_to :user
end