未定义的数组键 - Laravel/Fortify 注册

Undefined array key - Laravel/Fortify Register

只是 Laravel 中的一个注册页 .. 如果不是学生,则用户必须选中复选框。

因此我尝试处理值 1 教师 0 学生,但我不知道如何在控制器中获取此值。

还尝试了下面的代码('role_id' => $input['role_id'],),当检查它时returns在数据库上“打开”但未检查它会抛出错误

Undefined array key "role_id"

注册查看..

<div class="form-group form-check">
   <input type="checkbox" class="form-check-input" id="role_id" name="role_id" value="0" 
   <label class="form-check-label" for="exampleCheck1">Teacher</label>
</div>

强化控制器..

/**
 * Validate and create a newly registered user.
 *
 * @param  array  $input
 * @return \App\Models\User
 */
public function create(array $input)
{
    Validator::make($input, [
        'name' => ['required', 'string', 'max:255'],
        'email' => [
            'required',
            'string',
            'email',
            'max:255',
            Rule::unique(User::class),
        ],
        'password' => $this->passwordRules(),
    ])->validate();

    return User::create([
        'name' => $input['name'],
        'email' => $input['email'],
        'password' => Hash::make($input['password']),
        'role_id' =>  $input['role_id'],
    ]);
}

}

关闭/>输入复选框

<div class="form-group form-check">
   <input type="checkbox" class="form-check-input" id="role_id" name="role_id" value="1"/>
   <label class="form-check-label" for="exampleCheck1">Teacher</label>
</div>

并在控制器中

return User::create([
        'name' => $input['name'],
        'email' => $input['email'],
        'password' => Hash::make($input['password']),
        'role_id' =>  $input['role_id']??0,
    ]);