Laravel中hasManyThrough怎么用,参数的含义是什么
Admin 2022-06-17 群英技术资讯 391 次浏览
第一种情况,我称之为传导关联表(简单模式)
国家有很多用户,用户有很多帖子
countries id - integer name - string users id - integer country_id - integer name - string posts id - integer user_id - integer title - string
查询某个国家的所有帖子,怎么实现?
countries为本表,posts为要输出的目标表,users为中间表
return $this->hasManyThrough('App\Post', 'App\User', 'country_id', 'user_id');
第二种情况,有中间表情况(纯中间表)
exam_paper(试卷表)id nameexam_paper_question(试卷与试题中间表)id exam_paper_id question_idexam_question(试题表)id name
我们要通过exam_paper的id查询question
return $this->hasManyThrough('exam_question', 'exam_paper_question', 'exam_paper_id', 'id','id','question_id');
// 参数1 目标表类名 exam_question, // 参数2 枢纽表类名 exam_paper_question, // 参数3 枢纽表中和当前表关联的字段名 'exam_paper_question.exam_paper_id', // 参数4 目标表和枢纽表关联的字段名 'exam_question.id', // 参数5 当前表中和枢纽表关联的字段名 'exam_paper.id', // 参数6 枢纽表和目标表关联的字段名 'exam_paper_question.question_id');
如果把当前表记作A,目标表记作B,中间表记作C,6个参数记作(B,C,CA,BC,AC,CB)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
swoole使用两种模式运行。单线程模式,这种模式就是传统的异步非阻塞Server。与Nginx和Node.js等程序是完全一致的。进程模式,Swoole提供了完善的进程管理、内存保护机制。 在业务逻辑非常复杂的情况下,也可以长期稳定运行。
今天小编就为大家分享一篇laravel 5.3 单用户登录简单实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
备忘录模式是一种行为型模式,它在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样可以在以后把该对象的状态恢复到之前保存的状态。主...
1、打开“php.ini”配置文件,在其中搜索“display_errors”项。2、将“display_errors”项的值设置为“Off”即可关闭所有的PHP错误报告,进而屏蔽所有错误。
一个字符串(string)就是由一系列的字符组成,其中每个字符等同于一个字节。字符串变量用于包含有字符的值。在创建字符串之后,我们就可以对它进行操作了。您可以直接在函数中使用字符串,或者把它存储在变量中。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008