0

I want to customize the laravel validation unique query

like User::where('type','admin')

Here is My Code

$validator = Validator::make($request->all(), [
        'name' => 'required',
        'email' => 'required|email|unique:users', //need to customize
        'password' => 'required',
        'confirm_password' => 'required|same:password',
    ]);

    if ($validator->fails()) {
        $res = [
            'bool' => false,
            'message' => $validator->errors()->first(),
        ];
        return response()->json($res);
    }
Nasir Awan
  • 15
  • 1
  • 9
  • Does this answer your question? [Laravel | Unique validation where clause](https://stackoverflow.com/questions/49211988/laravel-unique-validation-where-clause) – John Lobo Mar 22 '22 at 04:37

1 Answers1

2

You can use this

https://laravel.com/docs/8.x/validation#rule-exists

use Illuminate\Validation\Rule;

    $validator = Validator::make($request->all(), [
            'name' => 'required',
             email' => ['required','email',  Rule::unique('users')->where('type','admin')],
            'password' => 'required',
            'confirm_password' => 'required|same:password',
        ]);

        if ($validator->fails()) {
            $res = [
                'bool' => false,
                'message' => $validator->errors()->first(),
            ];
            return response()->json($res);
        }
Noman Saleem
  • 421
  • 1
  • 8