[英]Rails sort date by upcoming first, then descending
我有一個約會集合,其中包含一個start_date
DateTime字段。
我需要對這些約會進行排序,以便
即假設我有
我以相對時間為例,請記住要與Time.now比較的代碼
[ in_two_days, two_days_ago, tomorrow, yesterday]
我想返回
[
# First upcoming
tomorrow,
in_two_days,
# Then most recent first
yesterday,
two_days_ago
]
我正在使用Mongoid,但是由於數組中的項目很少,因此我會接受使用數組方法而非條件的解決方案(盡管使用mongoid條件的解決方案會更好)
upcoming, past = appointments.sort_by(&:start_date).partition{ |a| a.start_date.future? }
sorted = [*upcoming, *past.reverse]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.