嗨,我在auth()上使用一个选择标记,该标记在laravel的学校位置中选择用户和管理员我一直出现此错误Method Illuminate \ Validation \ Validator :: validateAdmin不存在。您能建议我要求的验证吗
我的寄存器控制器
protected function validator(array $data)
{
return Validator::make($data, [
'first_name' => ['required', 'string', 'max:255'],
'last_name' => ['required', 'string', 'max:255'],
'contact' => ['required', 'numeric ', 'min:11'],
'department' => ['required', 'string', 'max:255'],
'schoolposition' => ['required','in:user', 'in:admin'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:8', 'confirmed'],
]);
}
/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return \App\User
*/
protected function create(array $data)
{
if ($data['schoolposition'] == "admin") {
return Admin::create([
'first_name' => $data['first_name'],
'last_name' => $data['last_name'],
'contact' => $data['contact'],
'department' => $data['department'],
'schoolposition' => $data['school_position'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
} else {
return User::create([
'first_name' => $data['first_name'],
'last_name' => $data['last_name'],
'contact' => $data['contact'],
'department' => $data['department'],
'schoolposition' => $data['school_position'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
}
}
}
这是我的Register.blade.php
<div class="form-group row">
<label for="schoolposition" class="col-md-4 col-form-label text-md-right">{{ __('schoolposition') }}</label>
<div class="col-md-6">
<select id="schoolposition" name="schoolposition" class="form-control @error('schoolposition') is-invalid @enderror" name="schoolposistion" value="{{ old('schoolposition') }}" required autocomplete="schoolposition ">
<option value="user">user</option>
<option value="admin">admin</option>
</select>
@error('schoolposition')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
use Illuminate\Validation\Rule;
return Validator::make($data, [
.....
'schoolposition' => ['required',Rule::in(['user','admin'])],
....
]);
或
'schoolposition' => ['required','in:user,admin'],
像'schoolposition' => ['required','in:user,admin'],
那样枚举枚举验证>
protected function validator(array $data)
{
return Validator::make($data, [
'first_name' => ['required', 'string', 'max:255'],
'last_name' => ['required', 'string', 'max:255'],
'contact' => ['required', 'numeric ', 'min:11'],
'department' => ['required', 'string', 'max:255'],
'schoolposition' => ['required','in:user,admin'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:8', 'confirmed'],
]);
}