как вернуть объект вместо объекта в массиве - PullRequest
0 голосов
/ 25 декабря 2018

Я пытаюсь вернуть ответ объекта, который пришел из массива коллекции из-за отношения hasMany.

Я попытался сделать возврат $block->where('date','=',$today)->first();

ошибка: вызов неопределенного метода App \ BlockDate :: addEagerConstraints ()

public function block_dates() 
{
    return $this->hasMany(BlockDate::class);
}

public function schedule_block() 
{
    $today = Carbon::today()->toDateString();
    $block = $this->block_dates();

    return $block->where('date','=',$today)->first();
}

schedule_block() должен вернуть объект BlockDate.Если я удаляю first(), он возвращает массив с нужным объектом. Я хотел бы просто получить объект на основе отношения.Любая помощь приветствуется.

1 Ответ

0 голосов
/ 25 декабря 2018

попробуйте это:

public function schedule_block() {
    $today = Carbon::today()->toDateString();
    return $this->hasOne(BlockDate::class)->where('date','=',$today);
}
...