有一个返回所有门票的函数。我有两个角色:1-Moderator
(可以看到所有工单),2-Client
(可以看到自己的工单)。所以我请求所有的票,然后我检查user
是否是client
,然后我需要过滤掉并显示他自己的票。 Ticket
有 user_id
字段。我想我可以使用 foreach
还是有更好的选择?
$tickets = Ticket::all();
// check whether authenticated user is client
if (auth()->user()->role_id == 2) {
}
return new TicketsResourceCollection($tickets);
最佳答案
可以直接使用user_id
过滤掉数据:
if (auth()->user()->role_id == 1) {
$tickets = Ticket::all();
} else {
$tickets = Ticket::where('user_id', auth()->user()->id)->get();
}
关于php - 过滤已请求的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59104897/