Laravel 5.6 模型关联 user 表后查询 user 表数据只能获取第一条数据,不知道怎么获取第二条...

举报
lxw1844912514 发表于 2022/03/27 02:14:09 2022/03/27
【摘要】 按照开发手册的说法,肯定是指令不够全,附代码图 如果, tests 是文章表, users 是用户表 test.com/tests/1 是 id 为 1 的文章地址( get 访问) 假如 TestsController 是控制器 show 是文章详情 publish function show(Test ...

按照开发手册的说法,肯定是指令不够全,附代码图

file

如果, tests 是文章表, users 是用户表 test.com/tests/1 是 id 为 1 的文章地址( get 访问)
假如 TestsController 是控制器 show 是文章详情

publish function show(Test $test,Request $requset){ $mode=$test::find($requset->id);// 获取 id 为 1 的文章模型 $name=$mode->user->name;// 使用动态属性获得 User 模型,在取到 name 属性 var_dump($mode->user()->get()->toArray());// 可以看看都是什么 }
  

会生成相关 sql


   
  1. # 获取文章模型
  2. select * from tests where id=1 limit 1 # 使用文章模型的 user 放法,?是上面查到的 user_id select * from users where id=? limit 1

所以这个有一个 N+1 的问题,就是当你的文章模型有 N 的时候,你要得到每一个文章作者的名字,就会产生 1 个文章查询和 N 个 用户查询,所以有一个 with 方法可以避免,这个你可以自行研究下

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100028034

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。