Laravel Eloquent关联中如何组合两个查询条件?
解决方案
直接通过链式调用组合两个条件即可,Laravel的查询构建器支持链式调用多个方法,代码如下:
$tasks = Task::where('type', 0) ->with(['Office', 'Commander', 'Status', 'Priority']) ->paginate(8);
说明
- 单条件筛选时,
where('type', 0)和你原来的where([['type',0]])效果完全一致,前者写法更简洁 with()方法用于预加载关联模型,能避免常见的N+1查询性能问题,一次性把关联的office、commander、status、priority表数据查询出来- 最后调用
paginate(8)会自动生成分页数据,返回的集合包含分页后的任务列表,以及分页导航所需的参数(比如总页数、当前页等)
内容的提问来源于stack exchange,提问作者mahdi.gh
相关产品推荐
相关产品推荐

