Die folgende Tutorial-Kolumne von Laravel stellt Ihnen die verbesserte Schemadatenmigration von Laravel vor. Ich hoffe, dass sie Freunden, die sie benötigen, hilfreich sein wird!
Konzeption:
Wenn wir das Projekt des Unternehmens umstrukturieren, müssen wir jedes Mal, wenn wir eine Migrationsklasse erstellen, um eine Datentabelle hinzuzufügen, das neue gelöschte_at, das erstellte_at, das aktualisierte_at, den letzten_Operator und die letzte_Operater-ID angeben.
Diese fünf In den Feldern werden die Löschzeit, die neue Zeit, die Änderungszeit, der Name des letzten Operators und die ID des letzten Operators jeder Zeile aufgezeichnet.
1 Fügen Sie unter /providers/ einen Datenbankserveranbieter hinzu, um zu definieren, wie der $app['db_extra']-Dienstcontainer dieses Objekt erhält
3 Analysieren Sie den Inhalt in Abbildung 2 unten. ->Eine einzelne Instanz ist eine Fabrikklasse, die zum Erzeugen der db_extra-Klasse verwendet wird, wie in Abbildung 3 dargestellt. Diese Fabrikklasse wird in der folgenden Abbildung platziert
4 Dann analysieren Sie diese Fabrikklasse und erben Sie die Produktionsfabrik von Wenn es sich dieses Mal beispielsweise um ein verbundenes MySQL-Dienstverbindungsobjekt handelt, lasse ich ihn mein eigenes definiertes MSYQL-Verbindungsobjekt instanziieren, wie in Abbildung 4 gezeigt , in dieser MysqlExtraConnection.php-Klasse überschreibe ich die Methode der übergeordneten Klasse. Beim Ausführen des Befehls zum Hinzufügen einer neuen Migrationsklasse wird eine Migrationsdatei gemäß der von mir definierten Migrationsvorlage erstellt
6 , Definieren Sie uns Sie möchten standardmäßig neue Felder hinzufügen, wie in Abbildung 6 gezeigt
7 Als nächstes definieren Sie einen Befehl namens make:app_migration eigene neue Klasse. Wofür wird diese Klasse verwendet? Wird verwendet, um Zeichen in die neu hinzugefügte Migrationsdatei auszugeben Standardmäßig rufe ich die von mir definierte Schema-Klasse auf. Die standardmäßig hinzugefügten Felder sind 10. Die Konfiguration ist etwas mühsam, aber es ist wirklich einfach, sie zu erweitern besserer Weg? Danke in den Kommentaren, heheDas obige ist der detaillierte Inhalt vonInformationen zur erweiterten Schema-Datenmigration von Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!