让我们说我有一个带有类别的集合,同时渴望加载每个类别的所有描述。所以这意味着,每个类别hasMany
描述。我想在下拉列表中显示所有描述,而optgroup label
是属于描述的类别名称。所以像这样:
{{ Form::select('description', ['' => 'Select'] + $descriptions) }}
结果将是这样的(第一次google点击):
我知道我需要简单地传递一个多维数组,但我不知道如何实现它。任何指针都会有所帮助。我知道以下内容会给我一组Categories
:
Category::orderBy('name', 'asc')->pluck('name', 'id')->all();
但是我不能简单地加载描述,因为以下内容将产生相同的attay,没有任何描述:
Category::with('descriptions')->orderBy('name', 'asc')->pluck('name', 'id')->all();
答案 0 :(得分:2)
加载类别:
$categories = Category::with('descriptions')->orderBy('name', 'asc')->get();
然后准备$descriptions
数组:
foreach ($categories as $category) {
$descriptions[$category->name] = $category->descriptions->pluck('name', 'id');
}