如果值为true,则应检查复选框

时间:2018-01-08 07:51:17

标签: php laravel laravel-5 laravel-5.5

这是我的代码。如果值为true,我想显示我的复选框应该检查。但相反,我收到的错误是:

  

此集合实例上不存在Property [id]

@foreach($benefits as $benefit)
    <div class="form-check">
        <label class="form-check-label" for="benefit[]">
            <input class="form-check-input" type="checkbox" value="{{$benefit->id}}" id="benefit_id" name="benefit_id[]" @if($benefit->id == $user->benefits->id) checked @endif>{{$benefit->name}}
        </label>
    </div>
@endforeach

1 个答案:

答案 0 :(得分:5)

我认为splice是一个包含多个$user->benefits个对象的集合。您不仅可以获取集合的属性,还需要检查该集合中的任何对象是否具有等于当前Benefit的{​​{1}}属性。

可能的解决方案是在Laravel集合上使用contains函数。此函数将检查对象是否存在具有特定键的给定值。

id

刀片中更好的解决方案是

id