laravel 隔中间表一对一关联请问有什么方法吗?

新手上路,请多包涵

借用官网远层一对多的例子

posts

  • id - integer
  • user_id - integer

users

  • id - integer
  • country_id - integer
  • name - string

countries

  • id - integer
  • name - string

现在我的业务逻辑都在posts上,
我的需求是我在posts关联了users表,拿到users的一些数据,
又需要用users表的country_id拿到countries表的id,name数据
请问用哪些方法可以做到?

阅读 3.2k
3 个回答
✓ 已被采纳新手上路,请多包涵

刚学laravel一天的新手..问题已刚刚突发奇想,自己解决了..就是在posts belongsto user 的同时user再with country

这不就是个join查询吗?

clipboard.png
图片描述

clipboard.png

嗯 已经找到答案 有两种办法一是用 laravel hasOneThrough 不过这个需要版本支持
另一个是直接正常with 中间表B模型.C模型 , ->with('B.C')
B模型里面 去 一对一关联 C模型 不过有个问题就是方法名必须是模型名,目前没找别的命名原因

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题