Product.search(product_properties_property_id_eq: 'x', product_propertries_value_eq: 'y')
Ransack генерирует запрос, в котором что-то вроде:
WHERE (("product_properties"."value" = 'x' AND "product_properties"."property_id" = 'y'))
С помощью комбинатора можно поменять этот AND на OR, да:
WHERE (("product_properties"."value" = 'x' OR "product_properties"."property_id" = 'y'))
Но можно ли с помощью ransack составить запрос вроде:
WHERE(
( product_properties.value = 'x' AND product_properties.property_id = 'y' ) OR
( product_properties.value = 'x1' AND product_properties.property_id = 'y1' ) OR
( product_properties.value = 'x2' AND product_properties.property_id = 'y2' ) OR
)
Смысл - обычный фильтр товаров. Если это реализовано в Spree или ror-e, ткните, пожалуйста, т.к. все что там видел - немного другого плана, как мне показалось.