在标题中,我需要使用一些关系。我在appserviceprovider中定义了变量。像这样:
$v_categories = Category::where('parent_id', $v_group->id)->orderBy('order', 'asc')->get();
$view->with('categories', $v_categories);
当我在foreach中使用“类别”时,在刀片中的工作就像一种魅力。 但是,当我尝试将其与关系一起使用时,它将引发异常。
Exception
Property [children] does not exist on this collection instance.
这是我的关系:
public function children()
{
return $this->hasMany('App\Category', 'parent_id');
}
我的问题是我该如何在刀片中使用儿童功能和雄辩的“类别”(来自appServiceProvider)? 有一个问题。但是我不知道为什么吗?任何帮助都会很棒。提前致谢。
答案 0 :(得分:1)
这是因为您的hasMany
关系与get()
的结合返回了一个Collection
实例,其中包含Category
个项目的数组。
因此,您需要遍历这些内容以分别解决它们。
在您看来,请尝试以下操作:
@foreach ($categories as $category)
@foreach ($category->children as $child_category)
{{ $child_category->name }}
@endforeach
@endforeach