Laravel Advanced & Architecture
5-8 Years (Senior)
Medium
Production Scenario
How does Laravel’s Eloquent ORM prevent N+1 queries during polymorphic and nested eager loading with custom constraints?
Real-World Scenario / Incident Description
An endpoint fetching 50 posts with comments, comment authors, and polymorphic image attachments was executing 1,400 database queries, taking 4.2 seconds.
311 views
•
Updated 1 month ago
Constrained Nested & Morph Eager Loading
$posts = Post::query()
->with([
'author:id,name,avatar',
'comments' => function ($query) {
$query->where('is_approved', true)
->latest()
->take(5)
->with(['user:id,name']);
},
'imageable' => function (MorphTo $morphTo) {
$morphTo->morphWith([
Post::class => ['tags'],
User::class => ['profile'],
]);
}
])
->select(['id', 'user_id', 'title', 'slug', 'created_at'])
->paginate(20);
Prevention in Development:
Enforce strict loading in AppServiceProvider::boot():
Model::preventLazyLoading(! app()->isProduction());
Related Concepts:
#Eloquent
#N+1 Query
#Eager Loading
#Polymorphism
#Optimization
More Laravel Advanced & Architecture Interview Questions
How does Laravel Octane handle state persistence across requests, and how do you prevent catastrophic memory leaks and data bleeding in singletons?
Read →
How do you prevent Deadlocks when processing concurrent financial transactions or inventory deductions across multiple queue workers in Laravel?
Read →
How does the Laravel Service Container resolve dependencies using Reflection, and what are the performance trade-offs in large applications?
Read →
How do you execute Zero-Downtime database migrations on tables with 50+ million rows without locking writes in production Laravel?
Read →
How do you architect Multi-Tenant database isolation in Laravel (Single DB vs Multi DB vs Schema Separation)?
Read →