如何在控制器中获取用户角色数据并显示拉拉维尔



如何在视图页面中通过下拉列表显示?

用户型号:

public function registrationRoles(){
return [
3=>'Teacher',
4=>'Student'
];
}

我的视图页面

<select class="select" name="role_id" id="all-categories">
<option value="">Select One</option>
<option value="">Teacher</option>
<option value="">Student</option>
</select>

寄存器控制器

public function postRegister(Request $request)
{
$this->validate($request, [
'first_name'    => 'required',
'last_name'     => 'required',
'email'         => 'required|email|unique:users',
'phone'         => 'required|numeric',
'password'      => 'required|min:6|confirmed'
]);
$data = new User;
$data->first_name    = $request->first_name;
$data->last_name     = $request->last_name;
$data->email         = $request->email;
$data->phone         = $request->phone;
$data->password      = bcrypt($request->password);
// $data->role_id       = 0;
$data->save();
Session::flash('success', 'Waiting for admin approval');
return redirect('/register');
}

.......

如果您使用的是刀片:-

您可以在此处找到必要的读数 https://laravel.com/docs/4.2/html#drop-down-lists

{!! Form::select('role_id', <here you have to place returned value from registrationRoles>) !!}

你可以从在html中硬编码它们开始

<select class="select" name="role_id" id="all-categories">
<option value="">Select One</option>
<option value="0">Teacher</option>
<option value="1">Student</option>
</select>

在控制器中

public function postRegister(Request $request)
{
$this->validate($request, [
'first_name'    => 'required',
'last_name'     => 'required',
'email'         => 'required|email|unique:users',
'phone'         => 'required|numeric',
'password'      => 'required|min:6|confirmed'
]);
$data = new User;
$data->first_name    = $request->first_name;
$data->last_name     = $request->last_name;
$data->email         = $request->email;
$data->phone         = $request->phone;
$data->password      = bcrypt($request->password);
$data->role_id       = $request->role_id;
$data->save();
Session::flash('success', 'Waiting for admin approval');
return redirect('/register');
}

或者,如果您在视图中返回角色,则可以使用角色填充下拉列表 喜欢

$roles = Roles::all();
return view('yourView', compact('roles));

在你的刀片中

<select class="select" name="role_id" id="all-categories">
@foreach($roles as $role)
<option value="{{ $role->id }}">{{ $role->name }}</option>
@endforeach
</select>

最新更新