laravel - 如何通过数据透视表获得数据
我有laravel的问题。我已经在laravel的模型级创建了表和关系之间的关系,但是如果我想向视图显示数据,则会出现错误:此收集实例中不存在属性[类别]。laravel - 如何通过数据透视表获得数据
与电影的表称为:视频
表与类别被称为:类
枢轴表称为:category_video
视频型号代码:
public function categories() {
return $this->belongsToMany('App\Category');
}
类别model co德:
public function videos() {
return $this->belongsToMany('App\Video');
}
在控制器我有这样的:
$slider_videos = Video::->orderBy('rating','desc') ->limit(5)
->get();
鉴于我试试这个:
@foreach($slider_videos as $slider_video) {{$slider_video->category->name}}
@endforeach
我要补充的是,当我使用这个:{{$slider_video->category}}
它显示单排所有内容
顺便说一句,如何在模型中指定数据透视表的名称?
回答:
类别是你需要遍历它的集合:
@foreach($slider_videos as $slider_video) {{ $slider_videos->name }} categories are :
@foreach($slider_video->categories as $category)
{{$category->name}}
@endforeach
@endforeach
回答:
belongsToMany
返回集合即使只与关系连接的单记录。 您需要在foreach
循环中访问它。 像这样。
@foreach($slider_video->categories as $category) {{$category->>field_name}}
@endforeach
以上是 laravel - 如何通过数据透视表获得数据 的全部内容, 来源链接: utcz.com/qa/264858.html