Php 带有分组数据集的Laravel 5.4嵌套循环
“过滤器”表如下所示:Php 带有分组数据集的Laravel 5.4嵌套循环,php,laravel,loops,nested,Php,Laravel,Loops,Nested,“过滤器”表如下所示: id | group | label | value ----+----------+-------------------+---------------- 12 | deadline | 1 to 3 days | 1 AND 3 14 | price | Any | 0 15 | price
id | group | label | value
----+----------+-------------------+----------------
12 | deadline | 1 to 3 days | 1 AND 3
14 | price | Any | 0
15 | price | Less than 1000 | 0 AND 1000
16 | price | 1000 to 10000 | 1000 AND 10000
22 | location | Any | 0
23 | location | New York | newyork
24 | location | California | california
25 | location | Alabama | alabama
我需要显示“组”下的“标签”块
我的控制器:
public function index(){
$filters = Filters::all();
return view('frontend.request', compact('filters'));
}
public function index(){
$filters = Filters::all();
$groups = $filters->groupBy('group');
return view('frontend.request', compact('groups'));
}
我的看法是:
<?php foreach ($filters as $filter) { ?>
<div class="panel panel-default">
<b>{{ $filter->group }}</b>
<div id="collapseOne1" class="panel-collapse collapse in">
<div class="panel-body">
<div class="checkbox">
<label><input type="checkbox" name="{{ $filter->group }}" value="{{ $filter->any }}">{{ $filter->label }}</label>
</div>
</div>
</div>
</div>
<?php } ?>
{{$filter->group}
{{$filter->label}
我想在一个框内显示组下的所有标签,以此类推。以上代码为每个不正确的标签创建不同的框
我相信,它一定是嵌套循环,但我很难在Laravel上编写它。你知道应该怎么做吗
注意:这个线程给出了部分答案,但在我的例子中我们不知道区块大小:您可以使用Laravel的
groupBy()
收集方法
控制器:
public function index(){
$filters = Filters::all();
return view('frontend.request', compact('filters'));
}
public function index(){
$filters = Filters::all();
$groups = $filters->groupBy('group');
return view('frontend.request', compact('groups'));
}
视图:
@foreach($groups as$group=>$filters)
{{$group}
@foreach($filters作为$filter)
{{$filter->label}
@endforeach
@endforech