Introduction
In this blog article, we will explore the concept of eager loading model relations in Laravel Eloquent. We will learn how to load related models efficiently and provide a live example to illustrate the process.
What is Eager Loading?
Eager loading is a technique used in Laravel Eloquent to load related models along with the main model. By default, when we retrieve a model from the database, Eloquent only retrieves the model’s attributes and does not load any of its relationships. This can lead to performance issues when we need to access the related models later on.
Why Should You Use Eager Loading?
Using eager loading can significantly improve the performance of your Laravel application. It reduces the number of database queries by fetching all the related models in a single query, rather than executing a separate query for each related model. This can be especially beneficial when dealing with large datasets or complex relationships.
Create Data Model with $with variable
app/Models/Data.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Data extends Model
{
use HasFactory;
protected $with = ['comments'];
/**
* Write code on Method
*
* @return response()
*/
protected $fillable = [
'title', 'Slug_id', 'slug'
];
/**
* Get the comments for the blog Data.
*/
public function comments()
{
return $this->hasMany(Comment::class);
}
}
Get Data with comments
$data = Data::find($id);
$data->comments;
I hope it will help you…..!!!!