В show
зрения моего products
я использую следующую функцию, чтобы связать к следующему продукту (по заказу price
):Как отсортировать товары по одной цене в Ruby on Rails?
class Product < ActiveRecord::Base
belongs_to :user
def next
Product.where("user_id = ? AND price > ?", user_id, price).order("price ASC").first
end
end
Эта функция работает до тех пор, как все продукты отличаются по цене. В тот момент, когда у двух продуктов есть то же цена, хотя функция больше не работает, потому что она всегда ищет выше цена.
Как я могу сделать так, чтобы user
мог щелкнуть через все его продукты, используя функцию выше, даже если некоторые товары не отличаются по цене?
Я попытался заменить >
на >=
, но это всегда будет возвращать один и тот же продукт, оставив функцию практически бесполезной.
Может ли кто-нибудь помочь?
Пробуя этот 'Product.order (« цена ASC »). Где (« user_id =? AND price>? », User_id, price) .first' –
@Monk_Code: К сожалению, здесь тоже не работает – Tintin81