2016-01-04 45 views
0

我有一個名爲List的模型,每個列表都有很多Car。每輛車都有一名司機,可以是註冊司機或不是。這是如何檢索一個驅動程序的名稱Rails同時考慮兩個屬性的排序

Car Draper Decorator: 
... 
def driver_name 
    if driver.present? 
    driver.name 
    else 
    model.driver_name 
    end 
end 

好吧,現在我想按汽車司機的名字訂購一個名單。這意味着當運行List.cars時,會返回一個按照驅動程序名稱排序的列表,考慮註冊和未註冊。

回答

0

您可以使用Ruby的排序方法 - 而不是主動記錄:

cars = Car.all 
sorted_cars = cars.sort{|a,b| a.decorate.driver_name <=> b.decorate.driver_name } 

這將使用定義來進行排序的方法裝飾。

相關問題