Laravel关系模型指定条件查询方法
对于关系模型来说,有时候我们需要甄别关联后结果,例如,班级和学生是一对多关联,我现在查询班级,但是想只显示正常状态,即状态为1的学生,因为有的学生从这个班级里面删除了,状态是4,那么我们在查询的时候就可以使用如下语法:
1、定义关联关系:
Class模型:
publicfunctionlearners(){ return$this->belongsToMany('App\Models\Customer','learner_relation','class_id','learner_id'); }
Customer模型:
publicfunctionlearnerclasses(){ return$this->belongsToMany('App\Models\MyClass','learner_relation','learner_id','class_id'); }
2、查询代码:
$data=MyClass::with([ 'learners'=>function($query){ $query->select() ->where('learner_relation.status',1) ->orderBy('learner_relation.create_time','desc'); }, ]) ->find($id);
然后得到的结果就是我们想要的正常的学生。
以上这篇Laravel关系模型指定条件查询方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。