方法orderBy不存在 - laravel

时间:2017-10-02 19:09:11

标签: php laravel model sql-order-by

如何在此脚本中使用orderBy方法:

 public function getProposalByUser($userId)
{
    return ProposalModel::where('user_id', '=', $userId)->paginate(4)->orderBy('desc');
}

该脚本用于选择用户拥有的提案。我想安排它的顶部是最新的。 提前谢谢,抱歉我的英语不好......

3 个答案:

答案 0 :(得分:3)

似乎主要的问题是你以错误的顺序使用了这些方法。

public function getProposalByUser($userId)
{
    return ProposalModel::where('user_id', '=', $userId)->orderBy('desc')->paginate(4);
}

paginate实际上会在集合中返回查询结果,并且该集合没有orderBy方法,因此您无法像使用其他查询构建器方法那样链接它。 / p>

其次,看起来orderBy方法需要另一个参数,除非你的实体确实有一个名为'desc'的属性。

答案 1 :(得分:0)

试试这个:

return ProposalModel::where('user_id', '=', $userId)->orderBy('user_id', 'desc')->paginate(4);

答案 2 :(得分:0)

试试这个:

return ProposalModel::where('user_id', '=', $userId)->orderBy('created_date', 'desc')->paginate(4);