Laravel Eloquent Always Load Model Relation with Example

Posted by

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…..!!!!

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x