/** * Извлечь все ресурсы или ресурс замка. * * @param Resource|string|int|null $resource * @return int|\Illuminate\Support\Collection|null */ public function getResources($resource = null) { if (isset($resource)) { $res = Resource::extract($resource); if (is_null($res)) { return null; } // связка с pivot... $rp = $this->resources()->find($res->id); return !is_null($rp) ? $rp->pivot->count : 0; } $arr = []; // Извлечь все ресурсы этого замка... foreach ($this->resources()->getResults() as $r) { $arr[] = ['name' => $r->name, 'count' => $r->pivot->count]; } return collect($arr); }