Не удается получить данные из коллекции в Laravel - PullRequest
0 голосов
/ 26 января 2020

Я хочу получить данные из коллекции. Я получаю следующие два массива в коллекции, когда я запускаю этот код:

{{ dd($child_categories->children) }}

enter image description here

enter image description here

когда я сбрасываю дд ($ child_categories я получаю:

enter image description here

и я хочу получить данные через l oop для этого я использую следующий код:

код:

Category_repository:

public function getChildCategories($id)
{
    return Category::with('children')->find($id); 
}

Категория Модель:

   public function parent()
    {
        return $this->belongsTo(Category::class, 'parent_id');
    }

    public function children()
    {
        return $this->hasMany(Category::class, 'parent_id');
    }

Категория Контроллер:

public function show($slug)
    {
        $category = $this->categoryRepository->findBySlug($slug);
        $child_categories=$this->categoryRepository->getChildCategories($category->id); 
        return view('site.pages.category', compact('category','child_categories'));
    }

Вид:

 @foreach ($child_categories as $index => $element)
  {{$element->name}}
@endforeach

1 Ответ

0 голосов
/ 26 января 2020

Обновление показывает функцию в этой строке:

$child_categories=$this->categoryRepository->getChildCategories($category->id)->get(); 

Затем попробуйте:

@foreach ($child_categories->children as $element)
  {{$element->name}}
@endforeach
...