簡體   English   中英

如何從 eloquent 對我的記錄進行排序和排序

[英]How to order and sort my records from eloquent

嗨,我有一個查詢,它獲取所有類別名稱並將它們顯示在前端。 現在的問題是類別名稱有一個名為其他的字段名稱(它可能像其他水果或其他蔬菜等)。 現在我希望其他人的唱片名稱出現在我得到的最后一個系列中。

查詢

$subcat = Category::where('parent_category_id', 62)->where('is_active', 1)->lists('name', 'id');

它會返回的是

Illuminate\Support\Collection Object
    (
        [items:protected] => Array
        (
            [64] => Grapes
            [65] => Pineapple
            [66] => Cranberry
            [67] => Strawberry
            [68] => Pomogranate 
            [69] => Others //like this
            [71] => Orange & Apple
            [72] => Guava & Mango
            [73] => Mixed Fruit
            [384] => Other Juices //another one
            [395] => Concentrates
        )

    )

我想將其他字段名稱放在最后。

請幫助我。

對此的一種解決方案是向表中添加Sort_Order列,然后將現有查詢修改為類似的內容;

$subcat = Category::where('parent_category_id', 62)->where('is_active', 1)->orderBy('Sort_Order','desc')->lists('name', 'id');

通過這種方式,您可以自己在數據庫中顯式設置排序順序,而不必依賴 eloquent 模型來執行任何操作,而不僅僅是按您指定的排序順序進行排序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM