Benito Serna Tips and tools for Ruby on Rails developers

Code to run the examples for preload, includes or eager_load

February 16, 2021

Do you know “in theory” the difference between “includes”, “preload”, “eager_load” and “joins”, but you still think that you need more examples to really understand how to use them?

Here you will find a set of examples to help you understand how you can use this 4 methods.

You can find the code on bhserna/preloading_examples

This is the code that I used for the post: Examples to learn the difference between preload, includes or eager_load.

On lib/examples.rb you will find a list of examples with:

You can use this code to play a little more and try different things.

How to run the examples

  1. Create a postgres database with createdb preloading_examples. As you can see the in db/config.rb the name of the database is hardcoded, so you will need to create a database with that name.

  2. Install the dependencies with bundle install.

  3. Run the seeds with ruby db/seeds.rb. You can also update the data that you want to use, there.

  4. Run the examples with ruby lib/examples.rb.

Related articles

No more… “Why active record is ignoring my includes?”

Get for free the first part of the ebook Fix n+1 queries on Rails that will help you:

  • Explain what is an n+1 queries problem
  • Identify when ActiveRecord will execute a query
  • Solve the latest comment example
  • Detect n+1 queries by watching the logs
  • Learn the tools to detect n+1 queries
Get the first part of the ebook for free