Ruby on rails 获取所有用户的所有帖子

Ruby on rails 获取所有用户的所有帖子,ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,一个用户有许多帖子,并且通过发送的followers有许多followers。如何选择某个用户正在关注的所有用户的所有帖子 class User < ActiveRecord::Base attr_accessible :email, :pwd_hash, :token, :username, :password, :avatar has_many( :follows_recieved, class_name: 'Follow', foreign_key:

一个用户有许多帖子,并且通过发送的followers有许多followers。如何选择某个用户正在关注的所有用户的所有帖子

class User < ActiveRecord::Base
  attr_accessible :email, :pwd_hash, :token, :username, :password, :avatar

  has_many(
    :follows_recieved,
    class_name: 'Follow',
    foreign_key: :followee_id,
    primary_key: :id
  )

  has_many :followers, through: :follows_recieved, source: :follower

  has_many(
    :follows_sent,
    class_name: 'Follow',
    foreign_key: :follower_id,
    primary_key: :id
  )

  has_many :followees, through: :follows_sent, source: :followee

  has_many(
    :posts,
    class_name: "Post",
    foreign_key: :user_id,
    primary_key: :id
  )

类似的方法应该可以奏效。你总是可以把它抽象成一个方法

Post.find_all_by_user(@current_user.followees)
我认为你会写作

has_many :posts
反而

has_many :posts