雄辩地访问对象内部的数组

时间:2020-04-30 14:46:40

标签: laravel eloquent

我有一个get形式,可以返回数组中的一些嵌套关系。我想知道如何在where语句中访问它们。

初始获取

tests:
- test_function: "foo.py:test_bar1"
  test_id: "1.1.1.1"
- test_function: "foo.py:test_bar2"
  test_id: "1.2"
...

我尝试过类似的事情

$taken = UserWork::with('work.place')
            ->with('user')
            ->with('work.timeslot')
            ->get();

$ taken中的json结果

json result from $taken

1 个答案:

答案 0 :(得分:1)

使用with将结束两个查询。如果您想为用户提供时隙null,则无需添加whereHas

    $callback = function($query) {
        $query->where('start_hour',"17:00:00");
    };

    $taken = UserWork::whereHas('work.timeslot', $callback)
        ->with(
            ['work.place', 'user', 'work.timeslot' => $callback]
        )->get();