2015-04-05 73 views
0

是否可以對條件上的數據進行排序?如何按條件使用訂單

例如,拗.order("expiration_date <?", Time.current, :desc)

+2

這沒有任何意義,你不能只訂購一些記錄。你想要做什麼? – victorkohl 2015-04-05 17:38:35

回答

0

的ORDER BY關鍵字用於結果集由一個或多個列進行排序。 缺省情況下,ORDER BY關鍵字按升序排序記錄。要按降序對記錄進行排序,可以使用DESC關鍵字。

您可以通過使用類似排序: -

sorted = @records.sort_by &:created_at 

或首先,把結果集,然後分揀它嘗試where: -

@records.where("expiration_date <?", Time.current).order(:created_at, :desc) 

而且你可以很容易地進行分頁; -

@records.paginate(:page => params[:page], :per_page => 15)#.order(" created_at ASC") 
+0

但是,如果我想得到列表expiration_date> =?,Time.current(initialy)和expiration_date <?「,Time.current(then)?那麼,如何使用will_piginate呢? – Stas 2015-04-06 04:27:35

+0

嗨@Stas ...我已經更新了我的分頁答案......試試看,並讓我知道:) – Milind 2015-04-07 14:23:17