我理解Laravel(Eloquent)中的关系是如何工作的,但假设我在两个模型之间有一种多对多的关系,称它们为Posts和Tags。
所以我们的关系很好,从帖子我可以访问所有相关的标签,从标签我可以获得所有相关的帖子。
但是。。。我有数据透视表中一行的ID,并且想要返回与该行相关的Post和Tag,我该如何操作?
编辑:
让我们介绍第三个模型,名为Foo。这包含数据透视表中的行的ID,我能从这个模型和另外两个模型建立关系吗?
您的中枢模型:
<?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;