Laravel 4-数据透视表


Laravel 4 - Pivot Tables

我理解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;