我理解Laravel(Eloquent)中的人际关系是如何工作的,但是假设我在两个模型之间有多对多的关系,称之为帖子和标签。
所以我们的关系很好,从帖子我可以访问所有相关的标签,从标签我可以获得所有相关的帖子。
但是......我在数据透视表中有一行ID,并且想要返回与此行相关的帖子和标签,我该怎么做呢?
编辑:
让我们介绍一个名为Foo的第三个模型。它包含数据透视表中行的ID, 无论如何我可以创建一个从这个到另外两个模型的关系吗?
答案 0 :(得分:3)
您的支点的模型:
<?php
class PostTagPivot
{
public function Post()
{
return $this->belongsTo('Post');
}
public function Tag()
{
return $this->belongsTo('Tag');
}
}
通过以下方式检索帖子和标签:
$Post = PostTagPivot::find($fooBarId)->Post;
$Tag = PostTagPivot::find($fooBarId)->Tag;