为什么我获取错误计数():参数必须是在laravel中实现可计数的数组或对象?

为什么我获取错误计数():参数必须是在laravel中实现可计数的数组或对象?,laravel,scope,Laravel,Scope,我试图在我的项目中定义一个本地范围,以便在我的主页中显示流行的(下载最多的)内容……因此,这是我的文件模型代码: public function scopePopular($query) { return $query->orderBy('file_download_num'); } 正如您所知,“文件下载”是我试图从数据库中获取数据的字段。。。 这就是我在HomeController中使用此作用域的方式:

我试图在我的项目中定义一个本地范围,以便在我的主页中显示流行的(下载最多的)内容……因此,这是我的文件模型代码:

        public function scopePopular($query)
        {
        return $query->orderBy('file_download_num');
        }
正如您所知,“文件下载”是我试图从数据库中获取数据的字段。。。 这就是我在HomeController中使用此作用域的方式:

        $popularFiles = File::Popular()->get();
我没有在我的控制器或模型中使用
count()
方法!但还是有错误!有什么建议吗?
注意:php版本是7.3

我发现在控制器中添加
toArray()
方法可以帮助
count()
方法正确工作…我的it工作者…所以控制器应该是这样的:

$popularFiles = File::Popular()->get()->toArray();

提供堆栈trace@lagbox我该怎么办?@navid希望有此帮助:@Poldo不幸没有工作…它应该是
File::popular()->get()