laravel - 无法从 Laravel 中的集合中获取数据
问题描述
我想从集合中获取数据,当我运行此代码时,我在集合中得到以下两个数组:
{{ dd($child_categories->children) }}
当我转储 dd($child_categories 我得到:
我想通过循环获取数据,因为我正在使用以下代码:
代码:
类别存储库:
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
解决方案
更新您在此行中显示功能:
$child_categories=$this->categoryRepository->getChildCategories($category->id)->get();
然后尝试:
@foreach ($child_categories->children as $element)
{{$element->name}}
@endforeach