显示 Laravel Blade 中的嵌套数据

Showing Nested Data in Laravel Blade

我有一个像这样的嵌套数据被传递给 blade-

我想在 blade 视图中显示它的数据。

所以我所做的是-

<ul class="dropdown-menu h-ctr h-ctr2 col-md-12 col-sm-12">
    @foreach ($categories as $category)
        <li class="no-border">
            <label class="pull-left">
                <input type="checkbox" value="{{ $category->id }}" checked>
                <strong> {{ $category->name }} (21)</strong>
            </label>
            <ul>
                @foreach($category->sub_category as $sub_cat)
                    <li>
                        <label class="pull-left">
                            <input type="checkbox" checked value="1"> {{ $sub_cat->name }} (7)
                        </label>
                    </li>
                @endforeach
            </ul>

        </li>
    @endforeach
</ul>

我收到嵌套循环部分的错误-

foreach($category->sub_category as $sub_cat)
    <li>
        <label class="pull-left">
            <input type="checkbox" checked value="1"> {{ $sub_cat->name }} (7)
        </label>
    </li>
@endforeach

错误是这样的-

有人可以帮忙吗?

在此先感谢您的帮助。

试试这个伙伴

@foreach($category['sub_category'] as $sub_cat)
    <li>
        <label class="pull-left">
            <input type="checkbox" checked value="1"> {{ $sub_cat->name }} (7)
        </label>
    </li>

@endforeach

如果这不起作用,您也可以分享您的控制器代码吗?

编辑: 在你的控制器中尝试将数组转换为集合(有更简单的原因喜欢使用 eloquent

$collection = collect($myarray);

试试这个..

@if($category->sub_category)
    @foreach($category->sub_category as $sub_cat)
    <li>
        <label class="pull-left">
            <input type="checkbox" checked value="1"> {{ $sub_cat->name }} (7)
        </label>
    </li>
    @endforeach
@endif