WhereDoesntHave Eloquent Query在Laravel中无法正常工作

xxls0lw8  于 2023-11-20  发布在  其他
关注(0)|答案(1)|浏览(140)

我有一个查询要返回:没有程序的所有计划或至少有一个程序但程序尚未结束的所有计划。
问题是,查询返回所有没有程序的计划,以及所有有程序的计划,其中程序已经结束。
下面是我的代码:

Schedule::where(['owner_id' => auth()->user()->owner->id,
            'session_id' => CurrentSession::fetchCurrentSession()->session_id
        ]) 
        ->whereDoesntHave('program', function(Builder $query){
            $query->where('end_date', null);
        })
        ->orderBy('schedule_time', 'asc')
        ->get();`

字符串

2vuwiymt

2vuwiymt1#

为什么不直接使用whereHas('program')

相关问题