Laravel关系模型指定条件查询方法


Posted in PHP onOctober 10, 2019

对于关系模型来说,有时候我们需要甄别关联后结果,例如,班级和学生是一对多关联,我现在查询班级,但是想只显示正常状态,即状态为1的学生,因为有的学生从这个班级里面删除了,状态是4,那么我们在查询的时候就可以使用如下语法:

1、定义关联关系:

Class模型:

public function learners() {
  return $this->belongsToMany('App\Models\Customer', 'learner_relation', 'class_id', 'learner_id');
}

Customer模型:

public function learnerclasses() {
  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关系模型指定条件查询方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP has encountered an Access Violation at 7C94BD02解决方法
Aug 24 PHP
使用php来实现网络服务
Sep 15 PHP
php下正则来匹配dede模板标签的代码
Aug 21 PHP
解决文件名解压后乱码的问题 将文件名进行转码的代码
Jan 10 PHP
PHP中遇到BOM、编码导致json_decode函数无法解析问题
Jul 02 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
Sep 30 PHP
PHP基于phpqrcode类生成二维码的方法详解
Mar 14 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
Feb 13 PHP
PHP cookie与session会话基本用法实例分析
Nov 18 PHP
PHP date_default_timezone_set()设置时区操作实例分析
May 16 PHP
PHP正则表达式函数preg_replace用法实例分析
Jun 04 PHP
laravel 输出最后执行sql 附:whereIn的使用方法
Oct 10 #PHP
基于laravel where的高级使用方法
Oct 10 #PHP
laravel 实现设置时区的简单方法
Oct 10 #PHP
thinkphp5.1框架实现格式化mysql时间戳为日期的方式小结
Oct 10 #PHP
Laravel Eloquent ORM 多条件查询的例子
Oct 10 #PHP
laravel withCount 统计关联数量的方法
Oct 10 #PHP
浅谈laravel中的关联查询with的问题
Oct 10 #PHP
You might like
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
PHP安装threads多线程扩展基础教程
2015/11/17 PHP
PHP数学运算函数大汇总(经典值得收藏)
2016/04/01 PHP
Yii2使用自带的UploadedFile实现的文件上传
2016/06/20 PHP
Packer 3.0 JS压缩及混淆工具 下载
2007/05/03 Javascript
创建一个复制UBB软件信息的链接或按钮的js代码
2008/01/06 Javascript
jquery中ajax学习笔记一
2011/10/16 Javascript
判断输入是否为空,获得输入类型的JS代码
2013/10/30 Javascript
JavaScript中的ubound函数使用实例
2014/11/04 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
2016/04/01 Javascript
基于JS代码实现图片在页面中旋转效果
2016/06/16 Javascript
浅析Javascript ES6中的原生Promise
2016/08/25 Javascript
vue.js 实现点击展开收起动画效果
2018/07/07 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
使用VueRouter的addRoutes方法实现动态添加用户的权限路由
2019/06/03 Javascript
如何实现一个简易版的vuex持久化工具
2019/09/11 Javascript
python下MySQLdb用法实例分析
2015/06/08 Python
部署Django到阿里云服务器教程示例
2020/06/03 Python
Elemis美国官网:英国的第一豪华护肤品牌
2018/03/15 全球购物
玉兰油美国官网:OLAY美国
2018/10/25 全球购物
加拿大著名的奢侈品购物网站:SSENSE(支持中文)
2020/06/25 全球购物
PHP中如何使用Cookie
2015/10/28 面试题
金融专业个人求职信
2013/09/22 职场文书
旅游管理专业生自荐信范文
2014/01/02 职场文书
学习新党章思想汇报
2014/01/09 职场文书
大学新生军训自我鉴定
2014/03/18 职场文书
投标承诺书范本
2014/03/27 职场文书
求职意向书
2014/07/29 职场文书
食品安全承诺书范文
2014/08/29 职场文书
群众路线教育实践活动调研报告
2014/11/03 职场文书
学习保证书怎么写
2015/02/26 职场文书
2015年社会实践个人总结
2015/03/06 职场文书
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang
CSS中理解层叠性及权重如何分配
2022/12/24 HTML / CSS