Laravel如何查询父关系

时间:2017-05-12 19:21:24

标签: php sql laravel eloquent

我有一个属于ScheduledProgram

的模型ProgramSession

我想更改下面的查询,将registration_start_date(来自ScheduledProgram)替换为registration_start(来自ProgramSession)。 I.E.我想更改查询以从其父模型而不是自身获取字段。

  $programs = ScheduledProgram::where('registration_start_date', '<=', $today)
                                    ->where('end_date', '>=',  $today)
                                    ->get();

1 个答案:

答案 0 :(得分:0)

您正在寻找whereHas()

$programs = ScheduledProgram::whereHas('programSession', function($query) use ($today) {
    return $query->where('registration_start', '>=', $today)
        ->where('end_date', '>=',  $today)
})
->get();