У меня есть приложение в стиле твиттера, в котором пользователь следует за многими людьми.Это достигается с помощью самообращенной ассоциации.
Все это работает очень хорошо, но мой мозг только что умер, пытаясь выяснить синтаксис активной записи, необходимый для перечисления обновлений статуса (сообщений) от людей, за которыми пользователь следит, упорядоченных по времени в одном запросе.
Моя пользовательская модель выглядит следующим образом
class User < ActiveRecord::Base
has_many :posts
has_many :friendships
has_many :friends, :through => :friendships
end
И модель поста
class Post < ActiveRecord::Base
belongs_to :user
end
Для полноты модель Дружбы
class Friendship < ActiveRecord::Base
belongs_to :user
belongs_to :friend, :class_name => "User"
end
В конечном итоге, что яхочу сделать это
@user.friends.reviews.all