我有Rails 3.1.2應用程序,其層次關係如下所示:分類 - >討論 - >評論按子屬性排序
一個類別有很多討論,討論有很多評論。
在分類顯示視圖,我顯示了所有屬於該類別的討論列表。我使用Kaminari進行分頁。到目前爲止,我已經成功的時候創建的討論時,命令他們,就像這樣:
@discussions = Discussion.where(:category_id => @category.id).order('created_at desc').page(params[:page])
不過,我寧願命令由屬於該討論最近的評論的時間進行討論,像大多數論壇一樣,最近更新的討論出現在屏幕的頂部。做這個的最好方式是什麼?現在
這沒有奏效。我應該補充的是,討論和評論之間存在多態關聯(討論是可以評論的),儘管我不確定這是否重要。你提到'@ forum.comments.last'的代碼似乎會得到評論,而我想要討論,但是按照每次討論中創建的最後評論來排序。 – 2012-01-30 06:33:25
我把注意力集中在我試圖解釋的東西上。 – danneu 2012-01-30 07:33:32
如何討論討論?我試過'@discussions = Discussion.order('latest_comment.created_at')',但它拋出了一個'SQLite3 :: SQLException:沒有這樣的列'錯誤。 – 2012-01-30 22:44:12