如何根据订阅状态显示所有用户,比如在列表中首先显示所有高级用户,然后显示黄金、白银、免费用户等?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 关注
- 139 浏览
添加回答
举报
0/150
提交
取消