Laravel -Formular Validierungs -Tutorial
Die Überprüfung der Laravel -Form kann über die Validate () -Methode im Controller implementiert werden. 1. Verwenden Sie Validate (), um Regeln wie Erforderliche, E -Mail, eindeutige usw. zu definieren, um die Einhaltung der Daten zu gewährleisten. 2. Sie können den zweiten Parameter übergeben, um die Fehlermeldung anzupassen, oder eine globale chinesische Eingabeaufforderung in Lang/ZH-CN/Validation.php festlegen. 3.. Verwenden Sie die @Error -Direktive, um Fehlermeldungen in der Blade -Vorlage anzuzeigen, und verwenden Sie Old (), um den Eingangswert zu erhalten. 4. Erweiterte Tipps umfassen: a) Manchmal um die bedingte Überprüfung zu implementieren, b) Array -Felder über Benutzer überprüfen. 5. Es sind gebräuchliche Regeln erforderlich, String, Numeric, Array, bestätigt, einzigartig, min, max, regex und nullbar. Der vollständige Prozess sorgt dafür, dass Datensicherheit und Benutzererfahrung gewährleistet sind und letztendlich eine zuverlässige Form des Formulars in der Box verarbeiten.
Die Verifizierungsfunktionen von Laravel sind leistungsstark und flexibel und können Sie leicht sicherstellen, dass die von den Benutzern eingereichten Daten den Erwartungen entsprechen. Hier ist ein praktisches Tutorial für Laravel Form -Validierungs -Tutorial für Anfänger und diejenigen, die ihre Stiftung konsolidieren möchten.

1. Überprüfung der Grundformular (unter Verwendung der Controller -Überprüfung)
Die häufigste Möglichkeit zu überprüfen, ist die Verwendung validate()
-Methode im Controller. Angenommen, Sie haben ein Benutzerregistrierungsformular, das Überprüfung Ihres Namens, Ihrer E -Mail und Ihres Passworts erfordert.
// Public Function Store (Anfrage $ anfrage) in Ihrem Controller { $ validated = $ request-> validate ([ 'Name' => 'Erforderlich | String | max: 255', 'E -Mail' => 'Erforderlich | E -Mail | Eindeutig: Benutzer', 'Passwort' => 'Erforderlich | min: 8 | bestätigt', ]); // Speichern Sie nach Überprüfung den Benutzer Benutzer :: create ($ validiert). return Redirect ()-> Route ('user.index')-> mit ('Erfolg', 'Benutzererstellung erfolgreich!'); }
veranschaulichen:

-
required
: Das Feld muss existieren und nicht leer. -
string
: Muss eine Zeichenfolge sein. -
max:255
: Bis zu 255 Zeichen. -
email
: Muss im rechtlichen E -Mail -Format sein. -
unique:users
: Einzigartig in der Benutzertabelle. -
min:8
: Das Mindestkennwort beträgt 8 Ziffern. -
confirmed
: Es muss ein entsprechendes Feldpassword_confirmation
mit demselben Wert geben.
Wenn die Überprüfung fehlschlägt, leitet Laravel automatisch auf die vorherige Seite zurück und speichert die Fehlermeldung in die Sitzung.
2. Passen Sie die Fehlermeldung an
Die Standardfehlermeldung ist in englischer Sprache. Sie können freundlichere Tipps anpassen:

$ validated = $ request-> validate ([ 'Name' => 'Erforderlich | String | max: 255', 'E -Mail' => 'Erforderlich | E -Mail | Eindeutig: Benutzer', 'Passwort' => 'Erforderlich | min: 8 | bestätigt', ], [ 'name.Required' => 'Der Name kann nicht leer sein', 'E -Mail.email' => 'Bitte geben Sie eine gültige E -Mail -Adresse ein', 'password.min' => 'Passwort erfordert mindestens 8 Zeichen', 'Passwort.Confirmed' => 'Das zweimal eingegebene Passwort ist inkonsistent'. ]);
Sie können auch globale chinesische Eingabeaufforderungen in lang/zh-CN/validation.php
festlegen, um das gesamte Projekt einheitlich zu machen.
3. Anzeigen der Fehlermeldung in der Blade -Vorlage anzeigen
Verwenden Sie in der Ansicht die Variable $errors
, um die Informationen zur Überprüfung des Verifizierungsfehlers anzuzeigen:
<!-Ressourcen/Ansichten/Benutzer/create.blade.php-> <form method = "post" action = "{{{Route ('user.store')}}"> @csrf <div> <Label> Name </label> <Eingabe type = "text" name = "name" value = "{{old ('name')}}"> @Error ('Name') <span style = "color: rot;"> {{$ message}} </span> @endError </div> <div> <Label> E -Mail </label> <Eingabe type = "E -Mail" name = "E -Mail" value = "{{old ('E -Mail')}}"> @Error ('E -Mail') <span style = "color: rot;"> {{$ message}} </span> @endError </div> <div> <Label> Passwort </label> <Eingabe type = "Passwort" name = "Passwort"> @Error ('Passwort') <span style = "color: rot;"> {{$ message}} </span> @endError </div> <div> <Label> Passwort bestätigen </label> <input type = "password" name = "password_confirmation"> </div> <button type = "senden"> senden </button> </form>
-
@error('field')
prüft auf Fehler im Feld. -
old('name')
behält die Benutzereingabe bei und vermeidet das Auffüllen des Formulars.
4.. Fortgeschrittene Überprüfungsfähigkeiten
a) bedingte Überprüfung (manchmal erforderlich, manchmal nicht erforderlich)
Verwenden Sie die sometimes
Regeln:
$ request-> validate ([ 'Telefon' => 'Manchmal | erforderlich | numerisch', ]);
Überprüfen Sie nur, ob phone
Telefonfeld vorliegt.
b) Überprüfen Sie die Array -Felder
Zum Beispiel Hinzufügen von Benutzern in Stapeln:
$ request-> validate ([ 'Benutzer.*. Name' => 'Erforderlich | String', 'Benutzer.*. E -Mail' => 'Erforderlich | E -Mail', ]);
c) Verwenden Sie Formularanforderungsklasse - für die komplexe Überprüfung von Bedeutung
Generieren Sie eine spezielle Anforderungsklasse:
PHP Artisan Make: Anfrage stoderuserRequest anfordern
Bearbeiten Sie die generierte app/Http/Requests/StoreUserRequest.php
:
öffentliche Funktionsregeln () { Zurückkehren [ 'Name' => 'Erforderlich | String | max: 255', 'E -Mail' => 'Erforderlich | E -Mail | Eindeutig: Benutzer', 'Passwort' => 'Erforderlich | min: 8 | bestätigt', ]; } öffentliche Funktionsnachrichten () { Zurückkehren [ 'name.required' => 'Name erforderlich', 'E -Mail.unique' => 'Diese E -Mail wurde registriert', ',' ]; }
Verwendung im Controller:
öffentlicher Funktionsgeschäft (StoreUserRequest $ Anfrage) { Benutzer :: create ($ request-> validated ()); return redirect ()-> route ('users.index'); }
Dieser Ansatz ist klarer und besonders für große Projekte geeignet.
5. Schnelle Überprüfung der gemeinsamen Überprüfungsregeln
Regel | veranschaulichen |
---|---|
required
|
Erforderlich |
email
|
Legal Mailbox -Format |
string
|
Saite |
numeric
|
Nummer |
array
|
Array |
confirmed
|
Benötigt das Feld xxx_confirmation
|
unique:table,column
|
Datenbank eindeutig (Standardprüfung für Felder mit demselben Namen) |
exists:table,column
|
Der Wert muss in der Datenbank existieren |
min:8
|
Mindestlänge/Wert |
max:255
|
Maximale Länge/Wert |
regex:/pattern
|
Regelmäßiges Match |
nullable
|
Leer sein lassen (normalerweise gemäß anderen Regeln) |
Grundsätzlich ist das. Der Überprüfungsmechanismus von Laravel ist in Kombination mit validate()
, benutzerdefinierte Nachrichten und Klingenfehleranzeige aus dem Kästchen herausgekommen, kann schnell eine sichere und zuverlässige Form des Formulars erreichen. Es ist nicht kompliziert, aber es ist leicht, Details zu ignorieren. Zum Beispiel erfordert confirmed
entsprechende Felder, und unique
sollte eindeutig darauf achten, den aktuellen Benutzer bei der Aktualisierung zu ignorieren, usw.
Das obige ist der detaillierte Inhalt vonLaravel -Formular Validierungs -Tutorial. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT
KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Definieren Sie den Zeitplan: Verwenden Sie das Zeitplanobjekt, um die artisanische Befehlsplanung in der Zeitplanmethode der App \ Console \ Kernel -Klasse zu konfigurieren. 2. Setzen Sie die Frequenz: Stellen Sie die Ausführungsfrequenz durch Kettenmethoden wie Everminute, tägliche, stündliche oder Cron -Syntax ein. 3.. Parameter übergeben: Verwenden Sie Arrays oder Zeichenfolgen, um Parameter an den Befehl zu übergeben. 4. Planen des Shell -Befehls: Verwenden Sie die EXEC -Methode, um Systembefehle auszuführen. 5. Bedingungen hinzufügen: Verwenden Sie an Wochentagen und anderen Methoden zur Steuerung des Ausführungszeitpunkts; 6. Ausgangsverarbeitung: Verwenden Sie Sendout PutTo, Appendout PutTo oder E -MailOut PutTo, um aufzuzeichnen oder

Erstellen Sie ein Laravel -Projekt und installieren Sie Sanctum- und Pusher -Pakete. 2. Konfigurieren Sie Pusher -Anmeldeinformationen und richten Sie Broadcast -Treiber ein. 3. Erstellen Sie ein Nachrichtenmodell und eine Migration; V. 5. Einrichten der Sanctum -Authentifizierung und API -Routing und implementieren Sie einen Nachrichtencontroller; 6. Laravelecho und Pusherjs im Front-End installieren und konfigurieren; 7. Verwenden Sie Echo, um dem Chat -Kanal beizutreten und Nachrichten anzuhören. 8. Definieren Sie die Logik der Broadcast -Autorisierung in Kanälen.php; 9. Starten Sie den Service und testen Sie die Echtzeit-Nachrichtenzustellung. Sie können einen Laravelwebsockets -Service erstellen und der gesamte Vorgang erfolgt über LAR

SoftDeletesinlaravelAllowyoutomarkrecordsasDeletedWithoutremovingTheStHedatabasEsettingAdeleted_attimestamp, die DensDatArCoveryWeneded.1.AddthesoftDeletEstraTtoyourmodel: Importandseilluminatin \ Database \ eloquent \ SoftdelyCel

Die Verwendung von String -Feldern und die PHP -Aufzählung ist der beste Weg, um Aufzählungen in Laravel zu verarbeiten. 1. Verwenden Sie Felder Typ String Typ in der Migration und fügen Sie optional Checkin -Einschränkungen hinzu. 2. Definieren Sie PHP enum mit dem Zeichenfolgenwert (php8.1); 3.. Umwandeln Sie Felder automatisch in Enum -Instanzen durch $ Casts im Modell; 4. Verwenden Sie Regel :: in (enum :: values ()) in Formularüberprüfung, um sicherzustellen, dass die Eingabe legal ist. 5. Verwenden Sie Enum :: cases () oder fake ()-> enum () in Fabrik- und Seed-Dateien, um Testdaten zu generieren; 6. Verwenden Sie das -> Wert -Attribut der Aufzählung oder vergleichen Sie die Enum -Instanzen bei der Abfrage direkt. Sollen

Laravel hat reibungslose String -Operationen auf der Grundlage von Illuminate \ Support \ Stringable eingeführt, da Version 7. Die Antwort lautet, str :: von () zu verwenden, um Kettenanrufe zu starten. 1. Erstellen Sie eine stringbare Instanz durch str :: ('String') und rufen Sie die verkettete Methode auf. 2. Zu den gemeinsamen Methoden gehören Trim, Ersetzen, Anhängen, Schlupf, Obermaterial usw. zum Formatieren. 3.. Verwenden Sie, wann ($ condition, $ callback) zur Implementierung einer bedingten Conversion. 4. Verwenden Sie nach dem Vorab -Substr und anderen Methoden, um Stringfragmente zu extrahieren. 5. Es kann verwendet werden, um die tatsächliche Anwendung zu löschen.

InstallThespatie/Laravel-sideemAppackageveringCompoSerandPublishitsConFigFileIfNeed.2.CreatearoutetogenerateAndServethesitemapdyNamical, entweder bywritingItoFileoroutputingxmldirect.3.CustomizethesitemapbyaddingDatherDdynamicurls

Modelle erstellen und Migration: Verwenden Sie PhPartisanMake: ModellPost-M, um Modelle und Migrationsdateien zu generieren, die Tabellenstruktur zu definieren und PhPartisanmigrate auszuführen. 2. Grundlegende CRUD -Operationen: Verwenden Sie Post :: All (), Find (), Create (), Save () und Delete (), um Daten abzufragen, zu erstellen, zu aktualisieren und zu löschen. 3. Verwenden Sie die eloquente Assoziation: Definieren Sie die Beziehungen zwischen Hörbol und Hasmany im Modell und verwenden Sie die Methode mit (), um die zugehörigen Daten vorzuladen, um N 1 -Abfrageprobleme zu vermeiden. V.

LaravelforgeIsaServerautomationPlatFormThatSimplifiesDeployinglaravelApplicationsBymanagingInfrastroctureAndDeployments.1.SetupyoURServerbyConnectingAcloudProvider, CrecessaServerviaforge undaddingyourSitewithadomain, intellomatisch
