我有一张像下面这样的桌子
id | name | pic | level | team
1 John 3 user
2 Ipsum 4 user
3 Lorem 5 supervisor
4 Dolor Amet 5 admin
5 Amet manager 3,4
6 Diego 7 user
7 Michael 5 supervisor 作为用户id 5,我想显示我可以在复选框值中看到的团队,并在复选框中编辑或更改它。我试过了,但这是错误。已检查的用户id 3也在未选中的值中再次显示如下所示

因此,视图必须像ipsum(已选中)和dolor (未选中)类似

这是刀片视图代码
@foreach($supervisor as $spv)
<div class="checkbox">
@foreach($result as $res)
@if($spv->id == $res->id)
<label>
<input type="checkbox" name="spv[]" value="{{ $spv->id }}" checked>{{ $spv->name }}
</label>
@else
<label>
<input type="checkbox" name="spv[]" value="{{ $spv->id }}">{{ $spv->name }}
</label>
@endif
@endforeach
</div>
@endforeach这是控制器代码
$query = DB::table('users')->where('id',$id)->first();
$list=explode(',', $query->team);
$result = DB::table('users')->whereIn('id',$list)->get();
$supervisor = Users::where('level','supervisor')->orWhere('level','admin')->get();你知道失踪的人在哪里吗?
发布于 2019-04-22 04:39:00
你可以试试这个:
在控制器中,压缩了$list变量,因为它是team id的数组:
$query = DB::table('users')->where('id',$id)->first();
$list=explode(',', $query->team);
$result = DB::table('users')->whereIn('id',$list)->get();
$supervisor = Users::where('level','supervisor')->orWhere('level','admin')->get();
return view('your-blade-view', compact('result', 'supervisor', 'list'));然后在你的刀片里
@foreach($supervisor as $spv)
<div class="checkbox">
<label>
<input type="checkbox" name="spv[]" value="{{ $spv->id }}" {{ ( in_array($spv->id, $list) ) ? 'checked' : '' }}>{{ $spv->name }}
</label>
</div>
@endforeach我希望这能帮上忙。
https://stackoverflow.com/questions/55770946
复制相似问题