2016-06-27 7 views
0

Ich habe L5-Modell mit Feldern E-Mail-Adresse und app_name. Ich möchte die einzigartige Kombination von E-Mail, die aus dem Formular und für App_name, seine Konstante immer überprüft. So sollte es Kombination von E-Mail und app_name = 'MYAPP' sein. Bitte schlagen Sie vor, wie Sie dies mit dem Validator erreichen können.Laravel Validierungsprüfung einzigartig mit Kombination von Konstante

+0

Wenn Ihr 'app_name' Konstante verwenden, dann überprüfen Sie müssen nur für einzigartige' email' als die Kombination nur einzigartig sein wird, wenn die 'email' einzigartig ist. – linuxartisan

+0

Verweisen Sie auf [Dokumente] (https://laravel.com/docs/5.1/validation#rule-unique) für "eindeutige" Validierung. – linuxartisan

Antwort

0

Wenn Ihr app_name konstant ist, dann müssen Sie nur nach dem eindeutigen email suchen, da die Kombination nur dann eindeutig ist, wenn email eindeutig ist.

Überprüfung auf einzigartige email -

Innerhalb des Validator oder Anfragen Klasse

'email' => ['email', 'unique:users,email,' . $this->route('users') . ',id'], 

Ich gehe davon aus dem folgenden:

  • Tabellenname für den Anwender ist users
  • Spaltenname für E-Mail ist email und ID ist id.
  • Routen erzeugt Route::resource
+0

Nein, ich kann dieselbe E-Mail für verschiedene app_name haben. – anandatheerthan

Verwandte Themen