Eager Loading
Resolving the N+1 query problem
Post.query.each do |post|
puts "Post category: #{post.category.name}"
end
# Output:
# SELECT * FROM posts;
# SELECT * FROM categories WHERE post_id = 1
# SELECT * FROM categories WHERE post_id = 2
# SELECT * FROM categories WHERE post_id = 3
# SELECT * FROM categories WHERE post_id = 4
# SELECT * FROM categories WHERE post_id = 5
# ....Post.query.with_category.each do |post|
puts "Post category: #{post.category.name}"
end
# Output:
# SELECT * FROM category WHERE post_id IN (SELECT id FROM posts);
# SELECT * FROM posts;Deep inclusion
Last updated