我经常定义一个长的“ baseQuery”,然后有条件地添加部分:
$query = User::where(...)->where(...);
if($x) {
$query = $query->where(...)
}
$query->get();
这很好。但是我意识到,当我想多次执行查询时,这种方式不一样:
$baseQuery = User::where(...)->where(...);
$res1 = $baseQuery->where(...)->get();
$res2 = $baseQuery->where(...)->get();
结果与预期结果不符。这是预期的行为吗,我根本无法按我的意图多次执行同一查询的派生类?