Read more about Chaperone ()
Read more about Chaperone ()
Chaperone ()

free note

💡 Laravel Tip: Eager loading can still hide an N+1 query. 👀

Imagine loading posts with their comments, then accessing the parent post from every comment.

The comments are loaded—but Eloquent does not automatically attach the already-loaded parent to each child. That parent access may trigger another query for every comment.

Laravel’s chaperone() solves this by hydrating the parent model onto its children. 🚀

Why use it?

✅ Prevent inverse-relationship N+1 queries

✅ Reuse the parent already in memory

✅ Keep nested loops efficient

✅ Make relationship behavior explicit

📌 Rule of thumb: when looping through eager-loaded children and accessing their parent, consider chaperone().

Have you ever found this hidden N+1 pattern in one of your applications?

#LaravelTips

You can publish here, too - it's easy and free.