如何在Laravel中使用where条件获取用户查询

yxyvkwin  于 2022-11-18  发布在  其他
关注(0)|答案(2)|浏览(114)

我有一个users的表,在这个表中,我有一列user_type_id,它与另一个表user_types相关。有一些特定的角色(subscriber和admin)。现在,在我的控制器中,我想获取user_type_id等于2的所有用户。通过这种方法,我只获取了第一行...
我的控制器:

public function show($id)
{
    $subscriber = User::where('user_type_id', 2)->firstOrFail();
    return view('show_subscriber', compact('subscriber'));
}
z6psavjg

z6psavjg1#

public function show($id) {
    $subscriber = User::where('user_type_id', 2)->get();
    return view('show_subscriber', compact('subscriber'));
}
0dxa2lsx

0dxa2lsx2#

public function show($id) {
    $subscriber = User::where('user_type_id', 2)->firstOrFail();
    return view('show_subscriber', compact('subscriber'));
}

firstOrFail()将返回第一个匹配记录,如果没有找到匹配记录,它将简单地返回404-未找到资源。

public function show($id) {
    $subscriber = User::where('user_type_id', 2)->get();
    return view('show_subscriber', compact('subscriber'));
}

get()将以集合的形式返回所有匹配的记录。
请参阅此处的详细信息https://laravel.com/docs/9.x/eloquent#not-found-exceptions
https://laravel.com/docs/9.x/eloquent#collections

相关问题