代码之家  ›  专栏  ›  技术社区  ›  Ashish

laravel:反向分页的结果

  •  0
  • Ashish  · 技术社区  · 6 年前

    我使用的是laravel 5.6,我想反转分页查询的结果。这就是我现在要做的:

    $chats = Chats::where('message_id', $message_id)->orderBy('id', 'DESC')->latest()->paginate(5);
    if(!empty($chats)) {
        $data['messages'] = $chats->reverse()->values();
        $data['status'] = 200;
        $data['create_user_id'] = Auth::id();
    }else{
        $data['error'] = "No chats available";
    }
    

    但它从结果中删除了分页。 假设我在表中有这10个值

    1, 2, 3, 4, 5, 6, 7, 8, 9, 10
    

    现在我想要 6, 7, 8, 9, 10 在第一页的结果和 1, 2, 3, 4, 5 在第二页的结果中,特别是按照这个顺序。

    请帮忙。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Jay Suchak    6 年前
    you can reversed the pagination with latest function.
    
    
       $chats = Chats::where('message_id', $message_id)->orderBy('id', 'DESC')->latest()->paginate(20);
    if(!empty($chats)) {
        $data['messages'] = $chats->values();
        $data['status'] = 200;
        $data['create_user_id'] = Auth::id();
    }else{
        $data['error'] = "No chats available";
    }
    

    删除reverse(),因为最新的()提供reverse()。