Я пытаюсь найти эффективный способ поиска результатов поиска. Примерно так:
search_results = Product.joins(:product_params).where(product_params: {name: name_a, value: value_a})
# do something to search_results to make it where I can further filter the results based on product_params
search_results = search_results.joins(:product_params).where(product_params: {name: name_b, value: value_b})
- ProductParam и Product связаны через own_to / has_many.
- имя в product_params проиндексировано.
- Существует большое количество продуктови product_params, поэтому здесь важна эффективность.