У пользователя много сообщений и есть много последователей, которые следует за отправленными. Как я могу выбрать все сообщения всех пользователей, которым должен следовать определенный пользователь?Получить все сообщения от всех пользователей, которых следует
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
)
UPDATE
Благодаря screenmutt для сдачи меня на верном пути.
я не мог использовать find_all_by_relation, но я мог бы использовать find_all_by_field
так что я просто отобразили followee иды
ids = Follow.find_all_by_follower_id(current_user.id).map{ |f| f.followee_id }
posts = Post.find_all_by_user_id(ids)