Меня интересует, когда ActiveRecord запускает свои запросы, потому что я помню, что читал, что Rails оптимизирует запросы, не выполняя их, пока не будут использованы фактические данные, я просто не уверен, как это доказать или найти в документации. Я не могу просто запустить строки в консоли rails, потому что это будет явно запускать запрос, когда я его наберу. Я объясню, что я имею в виду ниже:
@stores = Store.where(active: true)
# Query should not have ran yet
@stores = @stores.includes(:owners)
# Query should not have ran yet
@stores.each { |store| store.do_something }
# So from this point forward, it should run
# Store.includes(:owners).where(active: true) all at once
# or it would have ran 3 queries instead of one.
Как я могу это доказать или кто-то может привести меня к правильной документации?