我在 register.blade.php 文件中添加了 2 个复选框输入。我希望其中一个是必需的,即用户必须选择一个或另一个,否则我想显示某种错误消息,例如“这些字段不能为空”。我尝试在两个输入字段上添加一个名为 role_id[] 的数组。我还在第一个输入上添加了 value="1",在第二个输入上添加了 value="2",因为我希望 1 或 2 进入我的用户表到名为 role_id 的列中,因为我已经创建了一个角色表有 2 条记录,1 是求职者,2 是雇主,显然这里有关系。因此,基本上,如果用户选择第一个输入“我是求职者”,其值为 1,则 1 将进入数据库用户表中的 role_id 列,复选框 2 的想法相同“
RegisterController.php 文件:
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:8', 'confirmed'],
'role_id' => ['required'],
]);
}
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'role_id' => $data['role_id'],
]);
}
register.blade.php 文件:
<div class="form-group row">
<div class="col-md-8 offset-md-2 text-md-right">
<div class="form-check form-check-inline">
<input class="form-check-input" type="checkbox" name="role_id[]" id="job-seeker" value="1">
<label class="form-check-label" for="job-seeker">I'm a Job Seeker</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="checkbox" name="role_id[]" id="employer" value="2">
<label class="form-check-label" for="employer">I'm an Employer</label>
</div>
</div>
</div>
白衣非少年