laravel - Laravel - 突出显示已分配给用户的角色
问题描述
在用户\编辑视图中,我将所有角色显示为复选框。我想检查已经分配给用户的角色。表格中的所有其他字段都已填写数据库中的详细信息。我正在尝试使用 Spatie 的 Laravel 权限。
@foreach ($roles as $role)
<input type="checkbox" value="{{$role->id}}" name="{{$role->name}}" > {{$role->name}}</input>
@endforeach
我想使用纯 HTML。我读到了急切加载,但据我了解,它只会给我分配给用户的角色,而不是所有角色。
sychRoles()
单击更新按钮时,我想使用功能。我希望建立与 Voyager 使用的类似的视图:example。
解决方案
尝试这个。它将检查是否有任何登录用户。然后它将将该用户的角色与角色关系中的 id 匹配。
@foreach ($roles as $role)
<input type="checkbox" value="{{$role->id}}" name="{{$role->name}}"
@if(auth()->check())
@foreach(auth()->user()->roles as $userRole)
@if($userRole->id==$role->id) {{"checked"}}
@endif
@endforeach
@endif> {{$role->name}}</input>
@endforeach
推荐阅读
- php - 如何通过在 PHP 中添加 [ 从复选框表单结果中检索?
- unit-testing - 如何运行 Vue 单元测试?
- r - 数据框“*”只为同样大小的数据框定义
- html - IE 11 中的卡片定位与 Firefox 不同
- c++ - 如何固定 SIFT 关键点的数量?
- python - 在 Python 中使用条件填充相邻列
- javascript - 如何获取 Angular 反应表单中值更改的字段的 FormControlName
- mysql - 从具有多行结果的子查询结果中搜索关键字
- list - vim:列出搜索结果,找到其中一个然后跳回
- python - Tensorflow:来自相同初始猜测的完全不同的结果