0

我正在使用 laravel 创建一个网站,我有一个创建新用户的表单,在其中我需要一个选项来显示选择用户角色的方法,我想以下拉列表的形式执行此操作,但我'我很难弄清楚..到目前为止我有这个(见下面我的create.blade.php),但它没有显示我在数据库表中的三个角色的数据,(这些是管理员,教师和学生)。

<div class="form-group">
   <label for="role">Role</label>
   <select name="roles[]" class="form-control">
   @foreach($roles as $role)
     <ul class="dropdown-menu" role="menu">
     {{ $role }}
     </ul>
   @endforeach 
   </select>
</div>

下面是我的表格,我是 laravel 的新手,所以只是想学习让自己变得更好,非常感谢任何帮助:)

在此处输入图像描述

4

2 回答 2

1

如果您使用的是原生 HTML select,则可以使用

<div class="form-group">
   <label for="role">Role</label>
   <select name="roles[]" class="form-control">
   @foreach($roles as $role)
     <option value="{{ $role->id }}"> {{ $role->nameOrWhatever }} </option>
   @endforeach 
   </select>
</div>
于 2020-02-22T19:16:46.317 回答
0

在您的用户控制器中

/**
 * Show the form for creating a new user
 *
 * @param  \App\Role  $model
 * @return \Illuminate\View\View
 */
public function create(Role $model)
{
    return view('users.create', ['roles' => $model->get(['id', 'name'])]);
}

然后,在你的 create.blade.php

<select name="role_id" id="input-role" required>
    <option value="">-</option>
    @foreach ($roles as $role)
        <option value="{{ $role->id }}" {{ $role->id == old('role_id') ? 'selected' : '' }}>{{ $role->name }}</option>
    @endforeach
</select>

这将为您提供所需的

Laravel 动态下拉菜单

于 2021-03-01T15:11:48.283 回答