2017-12-14 9 views
1

レコードを降順で表示したいのですが、orderByを使用していますが、一番上に表示しています(最近のチャットのようなレコードを一番下に表示する必要があります。いずれも私を助けます。laravelの一番下のデータベースに追加された最新のレコードを表示する方法は?

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

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

私たちにいくつかのコードを教えてもらえますか? – Insax

+0

私はこのようにしています@Insax – Hemanth

+0

この ' - > orderBy( '​​created_at'、 'asc')'を試してください – Kirit

答えて

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

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

ちょうどあなたが(最後の下部にレコードを追加)、メッセージングアプリのスタイルのようにそれを実行したい場合は、あなたがこれを行うことがASC

+0

私は知っているが、最近のレコードを一番下に表示する必要がある(例えば、whatsappのようにスクロールすれば、表示する必要があるような以前のメッセージに行く)。最新の情報は – Hemanth

+0

に表示されているはずです。たとえば、最新の情報が下部に表示されている – Hemanth

+0

男...閉鎖された本のように自分自身を説明するか、密集していますか?あなたが必要とする逆の順序で結果を得るならば、Kuldeepが示したようにorderBy関数を使って逆変換してください。 – Amarnasan

0

にDESCを変更します。

  1. メイク1つのページに表示するレコードの数を確認してください(たとえば、10レコードなど)。
  2. 表示する最後の10個のレコードをプルするために、いつものようにクエリを実行しますted_at、desc)
  3. 最新のレコードが10個あるはずです。あなたのビューでは、created_atを昇順にソートしてレンダリングします。これは最上位に最古のレコード、最下位に最新のレコードを生成します。さらに

新しいレコードが入ってきているときはいつでも
  • 、あなただけのリストにそれを追加することができます。
  • さらに多くのデータ(プルダウンなど)が必要な場合は、さらに10個のレコードをフェッチし、すべてのレコードを昇順にソートしてもう一度レンダリングします。
0

あなたは結果を取得した後、コレクションを並べ替えることができます。

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

$collection = collect([ 
    ['name' => 'Desk', 'price' => 200], 
    ['name' => 'Chair', 'price' => 100], 
    ['name' => 'Bookcase', 'price' => 150], ]); 

$sorted = $collection->sortBy('price'); 

$sorted->values()->all(); 

$data = DB::table("chatbox") 
        ->where('dept_name',Session::get('dept_name')) 
        ->orderBy('created_at', 'desc') 
        ->paginate(20); 

$sorted = $data->sortBy('created_at'); 

$sorted->values()->all(); 

私はそれをテストしていないが、あなたはそれを試してみるかもしれません。

+0

そしてなぜ 'orderBy'と' sortBy'が必要でないのですか – Matz

+0

orderByはデータベースクエリを注文します(この場合は降順 - 最新のメッセージが最初のページに表示されます)。 sortByはコレクションをソートします(この場合は昇順 - 最新のメッセージが下部に表示されます)(データベース結果の取得後)。 –

+0

そして、この場合には何か違いがありますか?あなたは 'desc 'を使うこともできますし、' sortByDesc'を使うこともできます。たぶん私は間違っている – Matz

関連する問題