如何检索与Eloquent有多对多关系的第二级?

时间:2016-11-23 17:10:09

标签: laravel eloquent relational-database

我在这里描述了一个可能的E-R图片: 实体包括:新闻,标签,杂志

新闻属于许多杂志(杂志有很多新闻) 标签属于许多新闻(新闻有很多标签)

两者都有很多很多关系。

从杂志开始如何定义模型以访问标签?

喜欢$ magazine-> news() - > tags(); ?

1 个答案:

答案 0 :(得分:0)

模特杂志

function news(){
return $this->hasMany(News::class);
}

模特新闻

function tags(){
return $this->hasMany(Tag::class);
}

function magazine(){
return $this->belongsTo(Magazine::class);
}

在模型标签

function news(){
return $this->belongsTo(News::class);
}

现在

由于杂志有很多新闻,它会返回一个集合

@foreach($magazine->news as $n)
    {{ $n->id }}
        @foreach($n->tags as $tag)
            {{ $t->id }}
        @endforeach
@endforeach