国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim PHP-Framework Laravel Detaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel)

Detaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel)

Jan 08, 2019 am 11:34 AM
laravel php

Dieser Artikel bietet Ihnen eine detaillierte Einführung (Codebeispiel) zur Laravel-Datenmigration und zu Eloquent ORM. Ich hoffe, dass er für Sie hilfreich ist.

Man kann sagen, dass die Datenbank der am h?ufigsten verwendete und wichtigste Teil der Backend-Entwicklung ist. Laravel bietet eine sehr praktische Eloquent ORM-Modellklasse für die einfache und intuitive Interaktion mit der Datenbank. Gleichzeitig dient die Datenmigration der Verwaltung der Datenbank, die mit dem Team geteilt und bearbeitet werden kann. Weitere Informationen zu beiden finden Sie in der folgenden Dokumentation.
Im Folgenden werden beide als Beispiel verwendet. Die Anforderung besteht darin, den Browserverlauf des Benutzers aufzuzeichnen. Bitte bringen Sie dieses Beispiel nicht in tats?chliche Projekte ein, dieser Artikel ist nur ein Beispiel. Das eigentliche Projekt wird entsprechend den Anforderungen aufgezeichnet und die Speichermethode ausgew?hlt.

Erstellen Sie eine Datentabelle

Der erste Schritt besteht natürlich darin, eine Datentabelle zu erstellen. Mithilfe des Befehls ?Artisan“ k?nnen problemlos Modelle erstellt und Daten migriert werden. php artisan make:model Models/BrowseLog -m, der Parameter -m erstellt beim Erstellen des Modells auch eine Datenmigrationsdatei. Nach der Ausführung des obigen Befehls wurden zwei neue Dateien app/Models/BrowseLog.php und Database/migrations/{now_date}_create_browse_logs_table.php hinzugefügt.
Bearbeiten Sie als n?chstes {now_date}_create_browse_logs_table.php, um die Datentabelle zu erstellen

/**
?????*?Run?the?migrations.
?????*
?????*?@return?void
?????*/
????public?function?up()
????{
????????Schema::create('browse_logs',?function?(Blueprint?$table)?{
????????????$table->increments('id');
????????????$table->ipAddress('ip_addr')->comment('ip?地址');
????????????$table->string('request_url',?20)->comment('請(qǐng)求?url');
????????????$table->char('city_name',?10)->comment('根據(jù)?ip?獲取城市名稱');
????????????$table->timestamps();
????????});

????????DB::statement("ALTER?TABLE?`browse_logs`?comment'瀏覽記錄表'");?//?表注釋
????}

Nachdem die Bearbeitung abgeschlossen ist, führen Sie den Befehl php artisan migrate aus, um alle Datentabellen zu erstellen, die noch nicht erstellt wurden migriert. Wie folgt

Detaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel)

Pers?nlich ist der Standarddatentyp von Laravel fraglich. Das Datenformat von ipAddress() ist beispielsweise varchar(45). Tats?chlich k?nnen Sie ip2long verwenden, um es zur Speicherung in int zu konvertieren. timestamps() kann auch Zeitstempel zur Speicherung verwenden. Natürlich bietet Laravel auch Accessoren und Modifikatoren für eine einfache Wartung. Sie k?nnen im tats?chlichen Projekt selbst ausw?hlen.

Middleware definieren

Definieren Sie eine globale Middleware, die für jede Anfrage ausgeführt wird. Führen Sie php artisan make:middleware BrowseLog aus, um die Datei app/Http/Middleware/BrowseLog.php zu erstellen.

Fügen Sie die erstellte Middleware wie folgt zu app/Http/Kernel.php hinzu

Detaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel)

Daten aufzeichnen

Zeichnen Sie abschlie?end in der Middleware die Daten in der Datenbank auf. Der Code lautet wie folgt:

/**
?????*?Handle?an?incoming?request.
?????*
?????*?@param??\Illuminate\Http\Request??$request
?????*?@param??\Closure??$next
?????*?@return?mixed
?????*/
????public?function?handle($request,?Closure?$next)
????{
????????$log?=?new?\App\Models\BrowseLog();

????????$log->ip_addr?=?$request->getClientIp();
????????$log->request_url?=?$request->path();
????????$log->city_name?=?get_city_by_ip();

????????$log->save();

????????return?$next($request);
????}
Nachdem Sie einige Links besucht haben, gehen Sie zur Datenbank, um einen Blick darauf zu werfen

Detaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel)

Das Schreiben von Daten ist normal und dieses Beispiel endet hier.

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Laravel-Datenmigration und Eloquent ORM (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276
Objektrelationszuordnung (ORM) Leistungsstimmen in PHP Objektrelationszuordnung (ORM) Leistungsstimmen in PHP Jul 29, 2025 am 05:00 AM

Vermeiden Sie N 1 Abfrageprobleme, reduzieren Sie die Anzahl der Datenbankabfragen, indem Sie die zugeh?rigen Daten im Voraus laden. 2. W?hlen Sie nur die erforderlichen Felder aus, um das Laden vollst?ndiger Entit?ten zu vermeiden, um Speicher und Bandbreite zu sparen. 3.. Verwenden Sie Cache-Strategien vernünftigerweise, z. 4. Optimieren Sie den Lebenszyklus der Entit?t und rufen Sie Clear () regelm??ig an, um den Speicher freizugeben, um den Speicherüberlauf zu verhindern. 5. Stellen Sie sicher, dass der Datenbankindex die generierten SQL -Anweisungen existiert und analysiert, um ineffiziente Abfragen zu vermeiden. 6. Deaktivieren Sie die automatische ?nderungsverfolgung in Szenarien, in denen ?nderungen nicht erforderlich sind, und verwenden Sie Arrays oder Leichtgewichtsmodi, um die Leistung zu verbessern. Die korrekte Verwendung von ORM erfordert die Kombination der SQL -überwachung, -gespeicherung, der Stapelverarbeitung und der geeigneten Optimierung, um die Anwendungsleistung zu gew?hrleisten und gleichzeitig die Entwicklungseffizienz beizubehalten.

VSCODE Settings.json Standort VSCODE Settings.json Standort Aug 01, 2025 am 06:12 AM

Die Datei "Settings.JSON" befindet sich auf dem Pfad auf Benutzerebene oder Arbeitsbereichsebene und wird verwendet, um die VSCODE-Einstellungen anzupassen. 1. Benutzer-Level-Pfad: Windows ist C: \ Benutzer \\ AppData \ Roaming \ Code \ User \ Settings.json, MacOS is /users//library/applicationsupport/code/user/settings.json, Linux is /home/.config/code/usser/setings.json; 2. Pfad auf Arbeitsbereichsebene: .VSCODE/Einstellungen im Projekt Root Directory

Aufbau unver?nderlicher Objekte in PHP mit Readonly -Eigenschaften Aufbau unver?nderlicher Objekte in PHP mit Readonly -Eigenschaften Jul 30, 2025 am 05:40 AM

ReadOmpropertiesinphp8.2canonlyBeSignedoncinstructororatDeklarationandCannotBemodifiedAfterward, durchsetzungsvermutbarkeitatheluagelevel.2.ToachedevimmiMmutability, WrapMutabletypesLikearrayObjecustomimmutablecollections

Wie implementieren Sie ein überweisungssystem in Laravel? Wie implementieren Sie ein überweisungssystem in Laravel? Aug 02, 2025 am 06:55 AM

Erstellen Sie Referenzen Tabelle, um Empfehlungsbeziehungen zu erfassen, einschlie?lich Empfehlungen, Empfehlungen, Empfehlungscodes und Nutzungszeit; 2. Definieren Sie die Beziehungen zwischen H?rern und Hasmany im Benutzermodell, um Empfehlungsdaten zu verwalten. 3. Erstellen Sie bei der Registrierung einen eindeutigen Empfehlungscode (kann durch Modellereignisse implementiert werden). 4. Erfassen Sie den Empfehlungscode, indem Sie die Parameter w?hrend der Registrierung abfragen, nach überprüfung eine Empfehlungsbeziehung aufstellen und die Selbstverantwortung verhindern. 5. den Belohnungsmechanismus ausl?sen, wenn empfohlene Benutzer das angegebene Verhalten (Abonnementauftrag) abschlie?en; 6. Generieren Sie gemeinsame Empfehlungsverbindungen und verwenden Sie URLs mit Laravel Signature, um die Sicherheit zu verbessern. 7. Empfehlungsstatistiken auf dem Dashboard anzeigen, z. B. die Gesamtzahl der Empfehlungen und konvertierten Zahlen; Es ist notwendig, sicherzustellen, dass Datenbankbeschr?nkungen, Sitzungen oder Cookies bestehen bleiben.

CSS -Beispiel für Dunkelmodus umschalten CSS -Beispiel für Dunkelmodus umschalten Jul 30, 2025 am 05:28 AM

Verwenden Sie zun?chst JavaScript, um die Einstellungen für Benutzersysteme und lokal gespeicherte Themeneinstellungen zu erhalten und das Seitenthema zu initialisieren. 1. Die HTML -Struktur enth?lt eine Schaltfl?che zum Ausl?sen von Themenwechsel. 2. CSS verwendet: root, um helle Themenvariablen zu definieren, .Dark-Mode-Klasse definiert dunkle Themenvariablen und wendet diese Variablen über var () an. 3.. JavaScript erkennt bevorzuge-farbige Scheme und liest LocalStorage, um das ursprüngliche Thema zu bestimmen. 4. Schalten Sie die Dark-Mode-Klasse im HTML-Element beim Klicken auf die Schaltfl?che und speichern Sie den aktuellen Status vor LocalStorage. 5. Alle Farb?nderungen werden mit einer übergangsanimation von 0,3 Sekunden begleitet, um den Benutzer zu verbessern

Java -Leistungsoptimierung und Profilerstellungstechniken Java -Leistungsoptimierung und Profilerstellungstechniken Jul 31, 2025 am 03:58 AM

Verwenden Sie Leistungsanalyse-Tools, um Engp?sse zu lokalisieren, VisualVM oder JProfiler in der Entwicklung und Testphase zu verwenden und Async-Profiler in der Produktionsumgebung Priorit?t zu geben. 2. Reduzieren Sie die Objekterstellung, verwenden Sie Objekte wieder, verwenden Sie StringBuilder, um String -Splei?en zu ersetzen und entsprechende GC -Strategien auszuw?hlen. 3.. Optimieren Sie die Auswahl der Sammlung, w?hlen Sie die Anfangskapazit?t gem?? der Szene aus; V. 5. Tune JVM-Parameter, festlegen, angemessene Haufengr??e und Müllsammler mit geringer Latenz einstellen und GC-Protokolle aktivieren; 6. Vermeiden Sie die Reflexion auf Codeebene, ersetzen Sie Wrapper -Klassen durch Grundtypen, Verz?gerungsinitialisierung und verwenden Sie endgültige und statische. 7. Kontinuierliche Leistungstest und überwachung, kombiniert mit JMH

Wie baue ich eine REST -API mit Laravel? Wie baue ich eine REST -API mit Laravel? Jul 30, 2025 am 03:41 AM

Erstellen Sie ein neues Laravel -Projekt und starten Sie den Service. 2. Generieren Sie das Modell, die Migration und den Controller und führen Sie die Migration aus; 3. Definieren Sie die erholsame Route in Routen/api.php; V. 5. Verwenden Sie Postbote oder Curl, um die API -Funktion zu testen. 6. Fügen Sie optional die API -Authentifizierung durch Heiligtum hinzu; Erhalten Sie schlie?lich eine klare Struktur, vollst?ndig und erweiterbar Laravelrestapi, geeignet für praktische Anwendungen.

Was ist eloquentes Orm in Laravel? Was ist eloquentes Orm in Laravel? Jul 29, 2025 am 03:50 AM

Eloquentorm ist das integrierte Relational Mapping-System von Laravel. Sie betreibt die Datenbank über PHP -Syntax anstelle von nativem SQL, wodurch der Code pr?gnanter und leicht zu warten ist. 1. Jede Datentabelle entspricht einer Modellklasse, und jeder Datensatz existiert als Modellinstanz. 2. übernehmen Sie den aktiven Datensatzmodus, und die Modellinstanz kann selbst gespeichert oder aktualisiert werden. 3.. Support -Stapelzuweisung und das $ fillbare Attribut müssen im Modell definiert werden, um die Sicherheit zu gew?hrleisten. 4. Bieten Sie eine starke Beziehungsunterstützung wie eins zu eins, eins zu viele, viele zu viele usw., und Sie k?nnen über Methodenaufrufe auf die zugeh?rigen Daten zugreifen. 5. Integrierter Abfragekonstruktor, wo OrderBy und andere Methoden als Ketten bezeichnet werden k?nnen, um Abfragen zu erstellen; 6. Unterstützen Sie Zubeh?r und Modifikatoren, die die Nummer beim Erhalten oder Einlegen von Attributen formatieren k?nnen.

See all articles