Home > Blockchain >  laravel Unique Validation on row where is_active is 1
laravel Unique Validation on row where is_active is 1

Time:12-08

I want to implement unique validation on one column but it should only check active rows of the table. so is there any way I can implement this logic using laravel validation?

Below is the logic I am using to check unique records but its not working.

unique:users,email,is_active,1

CodePudding user response:

You can scope the query with additional clauses like that:

Rule::unique('users', 'email')->where(fn ($query) => $query->where('is_active', 1));

CodePudding user response:

According to the laravel validation document, you can do it as:

Rule::unique('users', 'email')->ignore(0, "is_active"),
  • Related