【发布时间】:2021-08-30 00:06:06
【问题描述】:
一直在尝试解决这个查询很长时间,它正在工作,但有一点错误查询。
这是我使用 livewire 的搜索功能提出的查询之一。
return empty($search)
? static::query()
: static::query()->where('id','like','%'.$search.'%')
->orWhereHas('status.user',function($q) use ($search){
$q->where('active',1)
->where('name','like','%'.$search.'%')
->orWhere('username','like','%'.$search.'%');
});
例如,我输入“jason”的名称,查询将返回正确的结果,但如果我输入 Jason 的用户名,它将返回 Jason 已更新(但未激活)的每条记录,我只希望操作返回特定的名称或用户名。
我已经尝试在不同的函数上将活动、名称和用户名分开,但结果是一样的。
【问题讨论】:
标签: laravel eloquent laravel-8 eager-loading