Where condition in Laravel Relationship Example

By Hardik Savani | January 4, 2019 | | 4995 Viewer | Category : Laravel


Laravel 5 provide great feature as model relationship. but if you need to use where clause on your relation model then how you can do it?, You can make where condition using whereHas function. it doesn't matter which relation you used like one to one, one to many, many to many, has many through etc.

Sometime might be you need to add where condition with your relation model then you can simply use whereHas() as i provide bellow example.

Several days ago i had same situation when i used laravel relationship. need to use where condition like i need to get those users that country is "India". so i write condition like as bellow example:

Example:

$users = User::whereHas('countries', function($q){

$q->where('name', '=', 'India');

})->get();

dd($users);

You can also pass dynamic variable inside the whereHas() like this way:

Example 2:

$search = 'India';

$users = User::whereHas('countries', function($q) use($search){

$q->where('name', '=', $search);

})->get();

dd($users);

I hope it can help you....



***Do you want me hire for your Project Work? Then Contact US.


We are Recommending you: