您的查询应如下所示
$query = Expenses::query();
$query->with(['expenses' => function ($query) {
$query->select('id', 'type_name');
},'user' => function ($query) {
$query->select('id', 'name');
}]);
$from_date = date('Y-m-d',strtotime($request->from_date));
$end_date = date('Y-m-d',strtotime($request->end_date));
if ($end_date and $from_date) {
$query->where(function($q) use ($from_date, $end_date){
$q->where('exp_date','>=',$from_date);
$q->where('exp_date','<=',$end_date);
});
}
$data = $query->orderBy('exp_date','desc')->get();
在这里,我在变量中进行了查询,所有操作都在该对象上执行