如何根據訂閱狀態顯示所有用戶,比如在列表中首先顯示所有高級用戶,然后顯示黃金、白銀、免費用戶等?User::with('subscriptions')->get(); // List of all users with subscriptions.// Users Modelpublic function subscriptions() { return $this->hasMany('App\Subscription');}// View@foreach($users as $user) {{ $user->name }}@endoreach
1 回答

四季花海
TA貢獻1811條經驗 獲得超5個贊
不確定您是如何設置表格的,但這應該適合您(使用level訂閱中調用的字段):
User::with(['subscriptions' => function($query){
$query->orderBy('subscriptions.level');
}])->get();
這應該根據訂閱的“級別”進行排序。然后,在您的刀片視圖中(假設某種表或其他東西),您可以調用用戶名,然后根據關系調用訂閱級別:
@foreach($users as $user)
<td>{{ $user->name }}</td>
<td>
@foreach($user->subscriptions as $sub)
{{ $sub->level}}
{{$loop->last? "":" | "}}
@endforeach
</td>
@endforeach
這是提供多個訂閱的一種方法 - 在訂閱級別的表格單元格中的每個訂閱之間使用管道
- 1 回答
- 0 關注
- 156 瀏覽
添加回答
舉報
0/150
提交
取消