所以,我可以使用 User::where('username', '!=', null)->get()
;
但是,我想使用 if 条件从第一个条件开始链接查询,而 where('username', '!=', null)
在这里是不必要的案件。让我举一个伪例子:
我正在运行一个基于用户的报告,其中有多个字段。我想像这样初始化查询构建器,并使用 if 语句链接查询。
$user = User::class(); // I know I can't use this line, however you'll get the idea.
if (isset($gender)) {
$user = $user->where('gender', $gender);
}
if (isset($age)) {
$user = $user->where('age', $age);
}
$users = $user->get()
是开始查询(在第一行)的唯一方法:
$user = User::where('username', '!=', null)
最佳答案
你在找
$userQuery = User::query();
然后,添加一些附加条款:
$userQuery->where(...);
然后,提供一个闭包
(->first()
、->get()
等)让您的用户:
$users = $userQuery->get();
关于laravel - 在不使用查询的情况下启动查询生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51404238/