У меня есть модель продукта с полями price
и sale_price
.
Я хочу сортировать записи по price
в порядке возрастания, но если у продукта есть значение sale_price
оно должно быть отсортировано по sale_price
не по price
:
Product.id:1, Product.name:watch, Product.price:100, Product.sale_price:nil
Product.id:2, Product.name:Bag, Product.price:200, Product.sale_price:50
Product.id:3, Product.name:Shoes, Product.price:300, Product.sale_price:nil
Я хочу, чтобы это было отсортировано как:
Вы можете попробовать с coalesce
:
Product.order('coalesce(sale_price, price)')