使用 eloquent 关系未定义的变量

Undefined variable by using eloquent relationships

这是 Laravel 返回的错误:

ErrorException compact(): Undefined variable $lists

我正在尝试连接多个表,例如: Tops 有很多 Lists 并且 Lists 有很多 Medias

我的 TopController 中有这段代码:

 $tops = Top::with(
                    'user:id,name,email',
                    'lists:id',
                    'categories:title,slug'
                )->paginate(20); 

检索用户和类别数据没有问题,但列表变量似乎未定义,我不明白为什么。

这是 Liste.php 型号:

 public function user()
    {
        return $this->belongsTo(User::class);
    }


      public function tops()
    {
        return $this->belongsToMany(Top::class);
    }



      public function medias()
    {
        return $this->belongsToMany(Medias::class);
    }

感谢您的帮助。

https://pastebin.com/Anv4AhVe

您只需要在索引方法中定义一个 $lists 变量。