Ruby on rails 获取所有用户的所有帖子
一个用户有许多帖子,并且通过发送的followers有许多followers。如何选择某个用户正在关注的所有用户的所有帖子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:
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