У меня есть модель товара с ценой в качестве атрибута.
Этот запрос работает нормально, но нужно изменить несколько вещей.
@products = Product.search(params[:query], :with => {:price => (params[:price_start].to_s.to_i..params[:price_end].to_s.to_i).to_a}, :page => params[:page], :per_page => 16)
У меня есть несколько предопределенных ценовых диапазонов, текущие ценовые диапазоны:
- 1-100 долларов
- 100-300 долларов
- 300-600 долларов
- 600 + Доллары
Вопрос
:with => {:price => (params[:price_start].to_s.to_i..params[:price_end].to_s.to_i).to_a}
работает нормально в случае (1-100), (100-300), (300-600). Но как отфильтровать для 600+ диапазонов. Как передать запрос как:
:with => {:price > (params[:price_start].to_s.to_i} ie the case when price > 600
Я проверяю, что пользователь не изменяет параметры, образующие длинный огромный массив.
Как я могу изменить этот запрос, чтобы передать> и <вместо массива цены. </strong>