Делаем приложение для форума.
class Topic < ActiveRecord::Base
belongs_to :user
belongs_to :board
has_many :posts, :inverse_of => :topic
end
class Post < ActiveRecord::Base
belongs_to :user
belongs_to :topic, :inverse_of => :posts
end
При просмотре доски я хочу, чтобы список тем располагался в порядке последнего сообщения тем, созданного по дате. Но я не могу понять, как написать это так, чтобы его можно было понять с помощью метода order().
В идеале было бы просто так
@topics = @board.topics.order("topic.posts.last.created_at")
Все, что я пишу, возвращает ошибки о том, что столбец не существует.
Важно отметить, что это @topics
будет передано в разбиение на страницы, поэтому я не могу просто извлечь результаты @board.topics
, упорядочить их самостоятельно, а затем разбить на страницы из-за того, что разбиение на страницы требует определенного типа коллекции.