Php 显示具有多对多关系的数据LAVEL 6

Php 显示具有多对多关系的数据LAVEL 6,php,laravel,laravel-6,Php,Laravel,Laravel 6,我是拉威尔6的初学者。我只是想问问。我想显示数据,但它不显示 index.blade.php: @ifisset$教师 @foreach$teachers->qualifs as$qualif {{$qualif->qual} @endforeach @恩迪夫 控制器: 公共功能指数 { $teachers=DB::表'teachers'->第一; $qualifs=DB::table'qualifs'->查找$teachers->id; 返回视图'teachers.index',压缩'teac

我是拉威尔6的初学者。我只是想问问。我想显示数据,但它不显示

index.blade.php:

@ifisset$教师 @foreach$teachers->qualifs as$qualif {{$qualif->qual} @endforeach @恩迪夫 控制器:

公共功能指数 { $teachers=DB::表'teachers'->第一; $qualifs=DB::table'qualifs'->查找$teachers->id; 返回视图'teachers.index',压缩'teachers','qualifis'; } qualif.php:

公共职能教师 { 返回$this->belongtomanity'todolist\teacher'、'qualif_teachers'; } teacher.php:

公共功能限定符 { 返回$this->belongtomany'todolist\qualif','qualif_teachers'; } 注意:数据存储正确,仅显示问题

错误:未定义的属性:stdClass::$qualifs


关系属于一个模型实例,它意味着一个有说服力的对象。当您使用查询生成器时,您将获得stdObject而不是雄辩的对象。因此你们的关系不起作用。要实现这一点,您必须使用雄辩而不是查询生成器

public function index()
{
    $teachers= teacher::get();
    return view('teachers.index',compact('teachers'));
}
风景会是这样的

@foreach($teachers as $teacher)
    @foreach($teacher->qualifs as $qualif)
        <li>{{ $qualif->qual }}</li>
    @endforeach
@endforeach

你能不能也张贴整个班级的老师和资格证书?表名、本地键和外键$教师1=教师::获取;现在的错误是::Property[qualifs]在此集合实例上不存在。由于您使用get for teachers,您必须首先循环该属性,然后通过关系循环。能否请您使用loop编辑您的答案,我认为这将解决我的问题。我添加了,但我得到了qualifs表列表,它应该只显示2个资格,它反复显示qual表。您编写的代码是否与我的代码相同??我不这么认为