我正在尝试显示与用户相关的角色,但不幸的是,在与用户有关的选择选项中没有显示角色。请帮助我如何解决此问题?
控制器
public function edit(User $user)
{
$data = [
'roles' => Role::where('name', '!=', 'super-admin')->get(),
'users' => $user->load('roles'),
];
return view('cms.user_management.edit', $data);
}
html视图
<select class="js-example-basic-multiple" name="roles[]"
multiple="multiple">
<option disabled >please select</option>
@foreach($roles as $key => $value)
<option value="{{ $value->name }}" {{ $users->id ==
$value->id ? 'selected="selected"' : '' }}>{{ $value->name }}</option>
@endforeach
</select>
只需更改以下代码即可重新查看分配给用户的所有角色
'roles' => $user->getRoleNames();
$user->getRoleNames()
将返回分配给该用户的角色数组,如['role01','role02']
所以,你只需要在叶片内部循环该阵列,并创造所需的条件。
查找更多关于它们的基本用法