Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

Dans mon code je veux que l'utilusateur est un email unique

 public function store()
    {

        $data = request()->validate([
            'name' => ['required','string', 'max:255'],
            'status' => ['required', 'integer'],
            'entreprise_id' => ['required', 'integer'],
            'email' => ['required', 'string', 'email', 'max:255', 'unique:clients'],
        ]);

            Client::create($data);
            return redirect()->route('clients.index');
    }

Ce que je veux

Je veux que l'utilisateur modifie son profile

public function update(Client $client)
{

    $data = request()->validate([
        'name' => ['required','string', 'max:255'],
        'status' => ['required', 'integer'],
        'entreprise_id' => ['required', 'integer'],
        'email' => ['required', 'string', 'email', 'max:255', 'unique:clients'],
    ]);

        $client->update($data);
        return redirect('clients/'. $client->id)->with('status','Votre compte a été mis a jour');
}

Ce que j'obtiens

On me dis l'Email existe deja or le veux qu'il puise changer ses information et s'il veux pas modifier son email alors ca fais juste un update

3 réponses


Balsakup
Réponse acceptée

Salut,

unique:clients,email,NULL,id pour la validation unique de l'email

Salut merci beaucoup

Merci beaucoup!