laravel关联表模糊查询
以前关联查询直接就写原生sql了,最近遇到项目需要配置同事,所以研究了laravel框架的写法!
场景:
两个表:公司表 公司联系人表 一对多的关系
查询条件:公司名称/公司简称 联系人(一个公司对应多个联系人)
下边是laravel代码:
public function index(Customers $customers , Request $request) { $customers = $customers->with('contacts'); #模糊查询公司名称或者简称 $request->name && $customers = $customers->where(function($query) use ($request){ $query->where('company_name','like',"%{$request->name}%")->orWhere('company_addr','like','%'.$request->name.'%'); }); #模糊查询关联表客户姓名 $request->contact && $customers = $customers->whereHas('contacts', function ($builder) use ($request,&$customers) { $builder->where('contact', 'like', "%{$request->contact}%"); }); #返回数据 return new CustomersResources($customers->orderBy('id','desc')->paginate($request->pageSize ?? $request->pageSize)); }
laravel的关联表查询写法就完事了~ 你学会了吗~
laravel关联表模糊查询
喜欢(1)