我喜欢Eloquent上的 withCount 方法来订购关系计数。我们假设我们想要按照他们所拥有的收藏数量排序一些帖子,在#34; normal"一对多的关系:
$posts = $query->withCount('favorites')->orderBy('favorites_count', 'DESC')->get();
正如我所说,正常关系完美无缺。但是当与多态关系一起使用时,似乎需要花费大量的时间,因此在Laravel 5.2和5.3中,超过100-1000个元素都失败了。
我有什么遗失的吗?我经常使用多态关系,我不认为关系本身存在问题,只是使用withCount方法。
注意:我不能使用sortBy,它必须是orderBy。而且我知道我可以使用Fluent查询构建器来完成它,但我对这种方式使用Eloquent很感兴趣。
谢谢!