includes
metoda AREL si vybere mezi dvěma strategiemi pro vytvoření dotazu, z nichž jedna jednoduše provede dva různé dotazy a druhá provede INNER JOIN. V obou případech budou produkty odlišné.
Pravé vnější spojení musíte provést ručně:
Product.joins('RIGHT JOIN categories ON categories.product_id = products.id').where(categories: { id: @my_product.categories.pluck(:id) } )
přidává také .preload(:categories)
pokud si chcete udržet dychtivé načítání kategorií.