由Laravel Eloquent订购

时间:2018-09-22 10:04:26

标签: laravel eloquent

我想知道如何通过DESC创建的followers()来订购以下商品。我认为仅向该查询添加orderBy即可按$ user排序?

$followers = $user->followers()->limit(12)->get();

如果有帮助,我正在使用软件包https://github.com/rennokki/befriended,并尝试按创建关注者的日期进行排序。

我在下面尝试了许多建议。但是通过添加以下内容使其起作用。

$followers = $user->followers()->orderBy('pivot_created_at', 'desc')->limit(12)->get();

4 个答案:

答案 0 :(得分:3)

请尝试以下操作:

$followers = $user->followers()->orderBy('created_at', 'DESC')->limit(12)->get()

答案 1 :(得分:3)

雄辩的人具有日期过滤器,例如oldest()latest()

$followers = $user->followers()->latest()->limit(12)->get();

答案 2 :(得分:0)

因为这是一个多态关系,所以我使用以下代码使其正常工作。

$followers = $user->followers()->orderBy('pivot_created_at', 'desc')->limit(12)->get();

答案 3 :(得分:0)

您还可以将默认顺序添加到关系中。 只需将->orderBy('yourColumn')添加到您的方法中即可。

示例:

    public function county()  {
        return $this->hasMany('\App\County')->orderBy('name');
    }