Laravel - Ресурс получает все отношение массива - PullRequest
0 голосов
/ 14 апреля 2020

У меня проблемы с получением всех связей массива внутри ресурса. Я хотел получить все departments, относящиеся к objectives, установленному сотрудником.

public function toArray($request)
  {
    $defaultData = !$this->resource !== null ? parent::toArray($request) : '';

    $additionalData = [

      // Position is not an array so it is a successful return
      'position' => $this->employee !== null ? $this->employee->position->departments : '',

       //Property [departments] does not exist on this collection instance.
      'objective_department' => $this->employee !== null ? $this->employee->objectives->departments  

    return array_merge($defaultData, $additionalData);
  }

Отношения

public function departments() 
{
  return $this->belongsToMany('App\Department');    
}

public function objectives() 
{
  return $this->hasMany('App\Objective', 'department_id');  
}

РЕДАКТИРОВАТЬ:

Данные, которые я в данный момент получаю из моего api, равны

   {
    id: 1
    objectives: [
     {
       id: 1
       department_id: 2
     }
     {
       id: 2
       department_id: 2
     }
   ]
  }

Я хотел получить все отношения из department_id для каждого элемента в массиве objectives

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...