Laravel Check If Relationship has Loaded or Not

Laravel Check If Relationship has Loaded or Not

Posted on:July 27, 2019 at 10:00 AM

One of the nice things of Larave is eager loading. Now, sometimes if you need to check whether the model has loaded the eager loading or not, then you need to check with relationLoaded(). Here is how you check this-

Here is my original code.

$users = App\User::with('profile')->first();

Now, I want to check whether $user load the relationship profile or not.


$users = App\User::with('profile')->first();

if($users->relationLoaded('posts')){
	// yes, it has been loaded
	// now, place your logic here
}

The function relationLoaded() returns true if relationship has loaded with the object, otherwise return false.

Reference