Method Illuminate \ Validation \ Validator :: validateAdmin不存在

问题描述 投票:0回答:2

嗨,我在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>

php laravel validation required
2个回答
1
投票
use Illuminate\Validation\Rule;

return Validator::make($data, [

        .....

        'schoolposition' => ['required',Rule::in(['user','admin'])],

         ....

    ]);

'schoolposition' => ['required','in:user,admin'],

0
投票

'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'],
        ]);
    }
© www.soinside.com 2019 - 2024. All rights reserved.