Laravel 5.2 中的多表搜索查询

MA-2016

试图从过滤器中的三个表中搜索患者记录......我已经编写了患者姓名和患者电话的代码,但由于它们在不同的表中而卡在治疗区域和医生处......请帮忙写一个查询此过滤器...

这是我的过滤器:

在此处输入图片说明

患者数据以及账单(医生和治疗区域):

在此处输入图片说明

患者模型:

public function scopeQueryStringFilters( $query )
{

    if(request()->has('patient_name'))
    {
        $query->where('name',request('patient_name'));
    }

    if(request()->has('patient_phone'))
    {
        $query->where('phone',request('patient_phone'));
    }

}
马卡绍夫·努博尔

您可以使用whereHas方法。

Patient::whereHas('billing', function($query){
    $query->where('area_of_treatment_id', request('area_of_treatment_id'));
})
->get();

Patient::whereHas('billing.doctor', function($query){
    $query->where('name', request('doctor'));
})
->get();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章