Php Laravel将两个Fk加载到同一个表中

Php Laravel将两个Fk加载到同一个表中,php,laravel,eloquent,eager-loading,Php,Laravel,Eloquent,Eager Loading,我想在Laravel8中使用两个外键到同一个表的关系 团队表 身份证件 名称 120 德国 245 意大利 您可以包含来自N+1查询包的消息吗?你的代码不应该导致任何错误。您确实有一些重复,winner\u id将匹配home\u id或away\u id,但这不是真正的N+1问题。除非在调用更多查询的循环中执行某些代码,否则您发布的内容不应成为问题。添加了请求的信息。。也许,一切都好吧?对于winner\u id,还有其他想法吗?是的,错误应该是这样的:Relation:winner,add

我想在Laravel8中使用两个外键到同一个表的关系

团队表

身份证件 名称 120 德国 245 意大利
您可以包含来自N+1查询包的消息吗?你的代码不应该导致任何错误。您确实有一些重复,
winner\u id
将匹配
home\u id
away\u id
,但这不是真正的N+1问题。除非在调用更多查询的循环中执行某些代码,否则您发布的内容不应成为问题。添加了请求的信息。。也许,一切都好吧?对于winner\u id,还有其他想法吗?是的,错误应该是这样的:
Relation:winner,add with('winner')
,等等。我不确定为什么它认为
App\Models\Team
是一种关系,而这显然是类,而不是方法名。对于
赢家id
,不太可能。这种方法还可以,但最好只执行
公共函数getWinnerAttribute(){return$this->home\u id==$this->winner\u id?$this->home:$this->away;}
,然后,
$fixture->winner
将返回预加载的
$fixture->home
$fixture->away
团队记录。我喜欢
winner\u id
的aproach。。谢谢你的帮助!