我正在与 Laravel 9 合作进行一个论坛项目,我想根据该问题的
votes
返回所有问题。
事实上,
questions
表有两个名为 upvotes
和 downvotes
的字段,显示问题的投票(就像 stackoverflow):
现在为了获得最多投票的问题,我尝试了这个:
public function theMostUpVotes()
{
$questions = Question::orderBy('upvotes')->get();
}
但这并没有解决,因为高票的问题没有出现在集合中,而是显示了所有问题。
那么如何解决这个问题并显示得票最多的问题呢?
我真的很感激你们对此的任何想法或建议......
因为
orderBy
默认情况下 ascending order
所以你必须指定方向作为第二个参数
$questions = Question::orderBy('upvotes','desc')->get();
或使用
orderByDesc
$questions = Question::orderByDesc('upvotes')->get();