Как указала jtbandes, чтобы перевернуть записи в индексе, вы должны изменить строку в своем действии индекса следующим образом:
@posts = Post.all(:include => :comments, :order => "created_at DESC")
Чтобы отменить список ваших комментариев, есть две возможности.
Вариант 1. В вашей почтовой модели вы можете заявить о своих отношениях следующим образом:
class Post < ActiveRecord::Base
has_many :comments, :order => "created_at DESC"
end
Вариант 2: в вашем индексном представлении просто переверните массив комментариев каждого поста перед их отображением:
<% @posts.each do |post| %>
<%= render :partial => post %>
<%= render :partial => post.comments.reverse %>
<% end %>
Опции имеют разные варианты использования. В варианте 1 вы говорите, что во всем приложении, когда вы ссылаетесь на комментарии к сообщению, эти комментарии должны извлекаться из базы данных в указанном порядке. Вы как бы говорите, что это внутреннее свойство комментариев в вашем приложении - посты содержат много комментариев, которые по умолчанию располагаются самыми новыми.
В варианте 2 вы просто переворачиваете комментарии на странице индекса, прежде чем они будут отображены. Они все еще были извлечены в исходном порядке (сначала самые старые) из базы данных, и они будут отображаться в том же порядке, где бы вы ни находились в комментариях к сообщению в вашем приложении.