请问: Eloquent中使用withCount 来做复杂排序条件, 但withcount闭包中使用的orderBy方法未起到效果 如何处理才可以生效?

1. 运行环境

Linux CentOS

1). 当前使用的 Laravel 版本?

9.33.0

2). 当前使用的 php/php-fpm 版本?

PHP 版本:8.1.12

php-fpm 版本:

3). 当前系统

CentoOS 7.6

4). 业务环境

开发环境

未使用负载

5). 相关软件版本

2. 问题描述?

请问: Eloquent中使用withCount 来做复杂排序条件, 但withcount闭包中使用的orderBy方法未起到效果 如何处理才可以生效?

主模型数据 和 certs 关联关系 是 一对多

我的需求是根据企业即将过期(过期时间最早)的证照过期时间来排序

使用withcount 但是 orderBy 未起作用, 这样我就没办法拿到过期时间最早的证照的时间了

请问: Eloquent中使用withCount 来做复杂排序条件, 但withcount闭包中使用的orderBy方法未起到效果 如何处理才可以生效?

3. 您期望得到的结果?

希望大佬们 帮我 解决突破这个 without的用法难题 怎样在withcount里面正常的使用上orderby 排序呢

4. 您实际得到的结果?

第五焱陽
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

翻译:30 个 Laravel Eloquent 的隐藏技巧 感觉可以看看这个15,16,17三点,然后用17的方法去处理

2年前 评论
第五焱陽 (楼主) 2年前
讨论数量: 8
Mutoulee

withCount里面做这件事感觉不靠谱

2年前 评论
第五焱陽 (楼主) 2年前

withCount 是统计数量了,order by 和limit 不会生效

2年前 评论
第五焱陽 (楼主) 2年前

翻译:30 个 Laravel Eloquent 的隐藏技巧 感觉可以看看这个15,16,17三点,然后用17的方法去处理

2年前 评论
第五焱陽 (楼主) 2年前

里面是不会生效的

2年前 评论
第五焱陽 (楼主) 2年前

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