2017-05-10 54 views
1

我想通過「licencie_id」在我的搜索功能上對結果進行分組,但當我置「Group By」條件時出現異常。Group by Eloquent查詢Foreach中查看

屬性[id]在此收集實例中不存在。

我已經做到了這一點,如:

$designations = $query->paginate(10)->groupBy('licencie_id'); 

當我調試,我得到:

@foreach($designations as $designation) 
           <tr> 
            <td><a href="{!! route('designation.show', $designation->id) !!}">{{$designation->id}}</a></td> 
            <td>{{$designation->rencontre->compet->categorie_compet->lb_categorie_compet}}</td> 
            <td>{{$designation->rencontre->compet->lb_compet}}</td> 
            <td>{{$designation->fonction_officiel->lb_fonction}}</td> 
            <td>{{$designation->rencontre->dt_rencontre}} {{$designation->rencontre->time_rencontre}}</td> 
            <td>{{$designation->rencontre->equipe_domicile->lb_equipe}}</td> 
            <td>{{$designation->rencontre->equipe_visiteur->lb_equipe}}</td> 
            <td>{{$designation->licence->lb_nom}} {{$designation->licence->lb_prenom}}</td> 
            <td>{{$designation->bareme->lb_bareme}}</td> 
            <td>{{$designation->nm_distance}}</td> 
            <td>{{$designation->mt_indemnite_km}}</td> 
            <td>{{$designation->bareme->mt_prime}}</td> 
            <td>{{$designation->statut_officiel}}</td> 
           </tr> 
          @endforeach 

Collection {#979 ▼ 
    #items: array:3 [▼ 
    125 => Collection {#1010 ▼ 
     #items: array:2 [▼ 
     0 => RencontreOfficiel {#975 ▶} 
     1 => RencontreOfficiel {#1006 ▶} 
     ] 
    } 
    131 => Collection {#998 ▼ 
     #items: array:1 [▶] 
    } 
    134 => Collection {#1013 ▶} 
    ] 
} 

我現在想在我看來像顯示此集合

我在哪裏做錯了?

回答

2

你作出錯誤的查詢生成器,雄辯ORM statments必須PAGINATE前:

$designations = $query->groupBy('licencie_id')->paginate(10) 

順便說,讀Laravel pagination docs你可以發現:

目前,分頁操作是由Laravel使用groupBy語句不能有效地執行 。如果您需要使用 分頁結果集的groupBy,建議您查詢數據庫 並手動創建分頁符。

這意味着東西不與分頁加上GROUPBY運作良好,我幾乎不建議您使用跳過它們放在一起,如果你想跳過意外的行爲。

+0

感謝您的回答我刪除了分頁方法!現在我得到:調用未定義的方法照亮\數據庫\查詢\生成器:: isEmpty() –

+0

@MathieuMourareau然後,如果這個問題得到解答,現在是時候寫一個關於你的新問題的新問題,解釋細節:) – Troyer

+0

我有這個以前例外,你能幫助我嗎? –