Skip to main content
Quick Tip

`whereHas()` multiple connections

// User Model
class User extends Model
{
protected $connection = 'conn_1';
 
public function posts()
{
return $this->hasMany(Post::class);
}
}
 
// Post Model
class Post extends Model
{
protected $connection = 'conn_2';
 
public function user()
{
return $this->belongsTo(User::class, 'user_id');
}
}
 
// wherehas()
$posts = Post::whereHas('user', function ($query) use ($request) {
$query->from('db_name_conn_1.users')->where(...);
})->get();

Tip given by @adityaricki

Enjoyed This Tip?

Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.

Recent Courses on Laravel Daily

Roles and Permissions in Laravel 13

14 lessons
57 min

Queues in Laravel 13

18 lessons
1 h 12 min read

How to Build Laravel 13 API From Scratch

30 lessons
1 h 23 min