我有3个型号

事件-表格(“事件”)
Shift-表格('shifts')
工作时间-表格('workedtimes')

我可以打电话给event->shifts->workedtimes一切都很好

现在我想查询以获取(Auth)用户已经工作过的所有事件

像这样:

Event::with('workedtimes')->where('workedtimes.uid', Auth::user()->id)->get();

但这是行不通的。请帮忙。

最佳答案

要获取已通过身份验证的用户工作的所有事件,您需要使用 whereHas() 方法:

$events = Event::whereHas('workedtimes', function($q) {
    $q->where('uid', auth()->user()->id);
})->get();

10-04 15:53