協會聯合訂貨,我有兩個型號,郵政和評論。帖子有很多評論和評論屬於帖子。在Rails的3
我想要做的,是有一個由創建日期排序,除非它有評論文章列表。然後它需要採取最新評論的創建日期。
現在我知道我可以包括這樣的聯想:
Post.find(:all, :include => [:comments], :order => "comments.created_at DESC, posts.created_at DESC")
但這會先訂購帶有註釋的所有帖子沒有評論的帖子。我不想要單獨訂購,但要合併。
該解決方案還需要與一個PAGINATE寶石一樣will_paginate兼容。
編輯
我現在用下面的代碼工作:
posts_controller.rb
@posts = Post.order('updated_at DESC').page(params[:page]).per_page(10)
comments_controller.rb
@post = Post.find(params[:post_id])
@post.update_attributes!(:updated_at => Time.now)
+1的選項#2。 – Brandan 2012-03-22 20:57:10
+1的非規範化 – 2012-03-22 23:24:53