如何在laravel底部显示添加到数据库的最新记录?

时间:2017-12-14 06:43:52

标签: laravel

我希望按降序显示记录,并使用orderBy它正在工作,但它显示在顶部(我需要查看最近底部聊天记录,但现在我收到邮件最近的顶级)任何人都可以帮助我。

$data = DB::table("chatbox")
                  ->where('dept_name',Session::get('dept_name'))

                  ->orderBy('created_at', 'desc')
                  ->get();

3 个答案:

答案 0 :(得分:0)

$data = DB::table("chatbox")
              ->where('dept_name',Session::get('dept_name'))

              ->orderBy('created_at', 'ASC')
              ->get();

只需将desc更改为ASC

答案 1 :(得分:0)

如果你想像消息传递应用程序样式(最后添加的记录在底部)那样做,你可以这样做:

  1. 确保您知道要在一个页面上显示的记录数,例如,10条记录
  2. 照常执行查询,拉出要显示的最后10条记录(按created_at,desc排序)
  3. 现在你应该有10条最新记录。在您的视图中,您在created_at上执行升序排序,然后渲染它们。因此,这将导致最高记录,最新记录在底部。
  4. 此外:

    • 每当有新记录进来时,您只需将其附加到列表中即可。
    • 如果用户需要更多数据(下拉或其他内容),则需要再获取10条记录,并在您的视图中对所有记录进行排序,然后再次渲染。

答案 2 :(得分:0)

您可以在获得结果后对集合进行排序:

https://laravel.com/docs/5.5/collections#method-sortby

tempdata = 

(linsys4f-PORT42-0211201516244460,dnis=3007047505)
(linsys4f PORT42-0211201516244460,incoming_tfn=8778816235,tfn_location=Ashburn Avaya,ivr_location=Ashburn Avaya,state=NC)
(linsys4f-PORT42-0211201516244460,language=ENGLISH)
(linsys4f-PORT42-0211201516244460,outcome=Transfer to CSR,exitType=Transfer,exitState=SETDIR2^7990019)
(linsys4f-PORT43-0211201516245465,outcome=Transfer to CSR,exitType=Transfer,exitState=SETDIR2^7990019)
(linsys4f-PORT44-0211201516291287,dnis=3007047505)
(linsys4f-PORT44-0211201516291287,incoming_tfn=8778816235,tfn_location=Ashburn Avaya,ivr_location=Ashburn Avaya,state=NC)

我没有测试它,但你可以尝试一下。