求大神帮看一下orderBy为什么会失效

字段什么的都没有问题,但是orderBy就是不生效

    public function index(Request $request)
    {
        $articles = tap(Article::latest(), function ($query) use ($request) {
            if ($request->filled('title')) {
                $query->where('title', 'like', "%{$request->title}%");
            }

            if ($request->filled('cate_id')) {
                $query->where('cate_id', $request->cate_id);
            }

        })->orderBy('sort','desc')->orderBy('id', 'desc')->with(['user', 'category'])->paginate();

        return view('backend.article.index', compact('articles'));
    }
给我个接口,我能连通一个世界!
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

看下是不是因为这个

Article::latest()
1周前 评论
working (楼主) 1周前
风吹过有夏天的味道 (作者) 1周前
working (楼主) 1周前
讨论数量: 17

'sort desc'??

1周前 评论
working (楼主) 1周前
王大牛 (作者) 1周前
working (楼主) 1周前

看下是不是因为这个

Article::latest()
1周前 评论
working (楼主) 1周前
风吹过有夏天的味道 (作者) 1周前
working (楼主) 1周前

原生sql打印出来看看

1周前 评论
working (楼主) 1周前
bluememory (作者) 1周前
working (楼主) 1周前

你把sort变成sort1,看下报错的sql,然后去执行就知道啦

1周前 评论

Article::latest()调用的是Illuminate\Database\Eloquent\Builder::latest()

最后的sql大致为

select * from Article order by `created_at` desc, `order` desc, `id` desc limit 0, 10
1周前 评论

谢谢各位解答,一人一个小赞,不成敬意,哈哈哈

1周前 评论

latest()是罪魁祸首哈哈哈

1周前 评论
working (楼主) 1周前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!