Today in this post we will see laravel unique validation on update. unique validation rule in laravel is used when you want to validate any email id or mobile number.
Here, we will see laravel unique email validation on update form or laravel unique validation with condition, laravel provide "unique" rule for email unique validation in laravel. So, let's see how to add unique validation on update in laravel
Here, you can create request class for email unique validation in laravel, run below command to create request class.
php artisan make:request StoreUserRequest
php artisan make:request UpdateUserRequest
Your controller file look like below.
<?php
namespace App\Http\Controllers;
use App\Http\Requests\StoreUserRequest;
use App\Http\Requests\UpdateUserRequest;
use App\User;
class UserController extends Controller
{
public function store(StoreUserRequest $request)
{
//Your Code
}
public function update(UpdateUserRequest $request, User $user)
{
//Your Code
}
}
Add below code in this file app/Http/Requests/StoreUserRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUserRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required',
'username' => 'required|min:8',
'email' => 'required|email|unique:users,email'
];
}
}
Add below code in this file app/Http/Requests/StoreUserRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class StoreUserRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required',
'username' => 'required|min:8',
'email' => 'required|email|unique:users'
];
}
}
Add below code in this file app/Http/Requests/StoreUserRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
class StoreUserRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required',
'username' => 'required|min:8',
'email' => ['required', Rule::unique('users')]
];
}
}
Add below code in this file app/Http/Requests/UpdateUserRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class UpdateUserRequest extends FormRequest
{
public function authorize()
{
return false;
}
public function rules()
{
return [
'name' => 'required',
'username' => 'required|min:8',
'email' => 'required|email|unique:users,email,'.$this->user->id
];
}
}
Add below code in this file app/Http/Requests/UpdateUserRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class UpdateUserRequest extends FormRequest
{
public function authorize()
{
return false;
}
public function rules()
{
return [
'name' => 'required',
'username' => 'required|min:8',
'email' => ['required', Rule::unique('users')->ignore($this->user)]
];
}
}
You may also like :
In this example, I will teach you how to generate PDF files from an HTML view in laravel. For generating PDF files I wil...
Jun-01-2020
In this article, we will see how to remove a specific item from an array in javascript. We will use the indexOf() m...
Nov-03-2022
In this article, we will see how to remove the package from laravel. there are different ways to remove packages fr...
Oct-31-2022
In this article, we will see carbon add day and add days to date in laravel 9. Carbon provides the addDay() and add...
Nov-17-2022