php - Laravel - 方法分页不存在

标签 php laravel

我正在尝试对来自 Controller 的订单进行分页

 $orders = Order::openorders()->paginate(15);

在模型中我有这个:

public static function stats()
{
    return Stats::where(\DB::raw('SUBSTRING(statistics, 5, 5)'), '!=','D')->where('statistics', 'NOT LIKE', '%F%')->where('statistics', 'NOT LIKE', '%X%')->get()->sortByDesc('date');
}

它正在显示这条消息:

(1/1) BadMethodCallException 
Method paginate does not exist.

最佳答案

方法链接指的是this 你不能像这样链接静态和公共(public)方法但是你可以利用scopes() .

像这样更改您的方法的名称。

public  function scopeOpenorders($query)
{
    return $query->where(\DB::raw('SUBSTRING(cu_stat, 1, 1)'), '!=','C')
         ->where('cu_stat', 'NOT LIKE', '%D%')->where('cu_stat', 'NOT LIKE', '%X%')
         ->orderBy('cu_date','DESC');
}

您可以在此处了解有关范围的更多信息 https://laravel.com/docs/5.6/eloquent#local-scopes

希望这对您有所帮助。

关于php - Laravel - 方法分页不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50852160/

相关文章:

PHP 数组到带有 JSON 的 jQuery 数组。 ($.post、parseJSON、json_encode)

php - 如何使用 php 从 linkedin 获取帖子的评论、分享和喜欢计数

php - 多个一对一关系 Laravel

php - 无法使用指定的键从数据库访问解码的 json 数据

php - Redis 故障导致 Laravel 5.6 中的登录和注册问题

bash - 如何设置 Laravel 安装程序和 Laravel Spark 安装程序的 bash PATH?

php - Codeigniter:如何在将表单提交给 Controller 之前加密密码?

javascript - 计算多行的总价

php - Laravel IronMq 队列的意外并行执行

php - 搜索多列,就好像它是 mysql 中的一列