Стремительная загрузка не работает, как я ожидаю.
У меня есть Продукты , которые имеют_мани Вариантов , и, конечно, каждый Вариант принадлежит_ к Product .
Я использую такой код для загрузки продукта и всех его вариантов:
products = Product.includes(:variants)
Это работает: все продукты и все варианты загружаются только с двумязапросы.Однако продукт каждого варианта не загружен, поэтому следующий код вызывает другой SQL-запрос:
puts products[0].variants[0].product.title
Почему это так и как я могу это исправить?Полагаю, что Product.includes(:variants => :product)
будет работать, но это вызовет еще один большой и ненужный SQL-запрос, поскольку данные о продуктах уже доступны.