设置Rails模型

时间:2018-05-06 22:35:56

标签: ruby-on-rails rails-activerecord

我有int factorial(int n) { if (n == 0) return 1; // base case else return n * factorial(n-1); // recursive case } 模型,User模型和Post模型。我如何在它们之间建立关系,以便我可以使用Bookmark

2 个答案:

答案 0 :(得分:2)

也许:

class User < ApplicationRecord
  has_many :bookmarks
end

class Bookmark < ApplicationRecord
  belongs_to :user
  has_many :posts
end

class Post < ApplicationRecord
  belongs_to :bookmark
end

答案 1 :(得分:0)

如果您想要获取属于该用户的所有帖子,则可以使用has_many :through association

class User < ApplicationRecord
  has_many :bookmarks
  has_many :posts, through: :bookmarks
end

class Bookmark < ApplicationRecord
  belongs_to :user
  has_many :posts
end

class Post < ApplicationRecord
  belongs_to :bookmark
end

然后你可以打电话:

user = User.first
all_posts = user.posts

它将返回一个数组,其中包含属于该用户的每个书签的所有帖子。