Datenbank -Sämamerin in Laravel

Datenbank -Sämamerin in Laravel
Die Webanwendungsdaten werden dauerhaft in der Datenbank gespeichert und sind ein wesentlicher Bestandteil eines Webprojekts. Manchmal müssen die Anwendung mit Dummy -Daten getestet werden. Diese Aufgabe kann im Laravel -Projekt mit einem Datenbank -Seasator erfolgen. Laravel enthält Saatgutklassen, um viele gefälschte Daten für Testzwecke schnell in die Datenbank hinzuzufügen, und diese Klassen werden in den Ort gespeichert, Datenbank/Seakind. Der Databaseseeder Die Klasse wird standardmäßig in Laravel verwendet, um Säatorklassen zu verwenden. In diesem Tutorial wurde die Art der Aussaat von Daten in der Datenbank unter Verwendung der Saatgutklassen des Laravel gezeigt.

Voraussetzungen:

Sie müssen die folgenden Aufgaben erledigen, bevor Sie die Datenbank -Seeding -Aufgabe beginnen.

  1. Erstellen Sie ein neues Laravel -Projekt mit dem Namen SeedReProject. Hier, der Komponist wurde verwendet, um das Laravel -Projekt zu erstellen. Wenn der Komponist Es wird vorher nicht installiert, Sie müssen es installieren, bevor Sie den folgenden Befehl ausführen.
    $ Composer Create-Project Laravel/Laravel SeaskerProject
  1. Gehen Sie zum Projektordner.
    $ CD SeedRingroject
  2. Alle Beispiele für dieses Tutorial wurden in Laravel Version 9 getestet+. Überprüfen Sie die installierte Version von Laravel.
    $ php Artisan -Version

Setup -Datenbank:

Sie müssen eine Datenbank in MySQL erstellen, um die Datenbank -Seeding -Aufgabe zu implementieren. Füllen Sie die folgenden Aufgaben aus, um eine Datenbank zu erstellen und die Datenbank für das Laravel -Projekt einzurichten.

  1. Führen Sie den folgenden SQL -Befehl aus, um eine Datenbank mit dem Namen zu erstellen DB_SEEDER Aus der MySQL -Eingabeaufforderung.
    MySQL> Datenbank erstellen db_seeder;
  2. Öffne das .env Datei des Laravel -Projekts und initialisieren Sie die Werte für die folgenden Informationen basierend auf der Datenbank.
    DB_CONNECTION = MYSQL
    Db_host = localhost
    Db_port = 3306
    Db_database = db_seeder
    Db_username = 'Benutzername'
    Db_password = 'Passwort'

Modell- und Migrationsdatei für eine Tabelle erstellen:

Gehen Sie zum Ordner des Laravel -Projekts und führen Sie den folgenden Befehl aus, um die Modell- und Migrationsdatei für die zu erstellen Kunden Tisch.

$ Php Artisan Make: Model Customs -m

Die folgende Ausgabe wird angezeigt, wenn das Modell und die Migrationsdatei erfolgreich erstellt wurden. Die Modelldatei benannte Kunden.PHP und die Migrationsdatei mit dem Namen 2022_03_09_141143_create_customers_table.PHP wurde hier erstellt. Die Migrationsdatei muss für das Hinzufügen der Felder der Kundentabelle basierend auf den Anforderungen des Projekts geändert werden, und sie wurde im nächsten Teil des Tutorials durchgeführt.

Ändern Sie die Migrationsdatei:

Öffnen Sie die Migrationsdatei vom Speicherort aus, Datenbank/Migration, und ändern Sie die Datei mit dem folgenden Inhalt gemäß dem Inhalt der Migrationsdatei 7 Felder. Dies sind ID, Name. Adresse, E -Mail, contact_no. erstellt_at und aktualisierte Felder.

Verwenden Sie Illuminate \ Database \ Migrations \ Migration;
Verwenden Sie Illuminate \ Database \ Schema \ Blueprint;
Verwenden Sie Illuminate \ Support \ Fassades \ Schema;
Return New Class erweitert die Migration

/**
* Führen Sie die Migrationen aus.
*
* @return void
*/
öffentliche Funktion ()

Schema :: Create ('Kunden', Funktion (Blueprint $ Tabelle)
$ table-> id ();
$ table-> string ("name", 30);
$ table-> text ("Adresse");
$ table-> String ("E-Mail", 50);
$ table-> string ("contact_no", 30);
$ table-> timestemps ();
);

/**
* Die Migrationen umkehren.
*
* @return void
*/
öffentliche Funktion Down ()

Schema :: Dropifexisten ('Kunden');

;

Erstellen Sie die Tabelle basierend auf der Migrationsdatei:

Führen Sie den folgenden Migrate -Befehl aus, um das zu erstellen Kunden Tabelle in die Datenbank. Die gefälschten Daten werden in diese Tabelle eingefügt.

$ php Artisan migrieren

Erstellen Sie Fabrik, um die gefälschten Daten zu generieren:

Führen Sie den folgenden Befehl aus, um die Fabrik zu erstellen, mit der gefälschte Daten in die Tabelle Kunden eingefügt werden können.

$ Php Artisan Make: Factory Customer Factory -Model = Kunden

Die folgende Ausgabe wird angezeigt, wenn die Fabrik erfolgreich erstellt wird und die Kunden.Php Datei wird in der erstellt Datenbank/Fabriken Ordner des Projekts.

Öffne das Kunden.Php Datei und ändern Sie den Inhalt der Datei mit dem folgenden Inhalt. Drei Faker -Eigenschaften wurden verwendet, um einen gefälschten Namen, eine E -Mail und eine Adresse im Skript hinzuzufügen. Diese sind faker-> name, faker-> mail, Und faker-> Adresse. Eine Faker -Methode wurde verwendet, um die gefälschte Telefonnummer zu generieren. Der Name der Methode ist numerify (). Diese Methode fügt eine gefälschte Telefonnummer ein, die mit '880', numerische Ziffern von 4 Zahlen gefolgt von '-,' und numerischen Ziffern von 6 Nummern gefolgt von einem anderen ', angezeigt wird-.''

Namespace -Datenbank \ Fabriken;
Verwenden Sie Illuminate \ Database \ eloquent \ fabrory \ fabrik;
Verwenden Sie App \ Models \ Kunden;
/**
* @extends \ illuminate \ database \ eloquent \ factories \ fabrik
*/
Class CustomerFactory erweitert die Fabrik

/**
* Definieren Sie den Standardzustand des Modells.
*
* @return Array
*/
Protected $ model = Kunden :: Klasse;
öffentliche Funktionsdefinition ()

zurückkehren [
'name' => $ this-> faker-> name,
'Adresse' => $ this-> faker-> Adresse,
'E-Mail' => $ this-> faker-> E-Mail,
'contact_no' => $ this-> faker-> numerify ('880-####-#######')
];

Erstellen Sie Sämaschinenklassen:

Führen Sie den folgenden Befehl aus, um die Säatorklasse zu erstellen, mit der die zuvor erstellte Fabrik ausgeführt wurde.

$ Php Artisan Make: Seeller Kundenseeder

Die folgende Ausgabe wird angezeigt, wenn die Säatorklasse erfolgreich erstellt wird und die Kundenrückgang.Php Klasse wird in der erstellt Datenbank/Seakind Ordner des Projekts.

Öffne das Kundenseeder.Php Datei und ändern Sie den Inhalt der Datei mit dem folgenden Inhalt. Nach dem Skript werden 20 gefälschte Datensätze nach der Ausführung des Saatgutbefehls eingefügt.

Namespace -Datenbank \ Seaser;
Verwenden Sie Illuminate \ Database \ console \ Seeds \ ohnemodelEvents;
Verwenden Sie Illuminate \ Database \ Seaser;
Verwenden Sie App \ Models \ Kunden;
Die Klassenkunden -Seemester erweitern Sämamer

/**
* Führen Sie die Datenbanksamen aus.
*
* @return void
*/
öffentliche Funktion run ()

Kunden :: factory ()-> count (20)-> create ();

Samendaten in die Tabelle:

Führen Sie den folgenden Befehl aus, um die Säatorklasse auszuführen, mit der 20 gefälschte Datensätze in die Tisch der Kunden eingesetzt werden können.

$ Php Artisan DB: Seed -Class = CustomerSeeder

Die folgende Ausgabe wird angezeigt, wenn die Datenbanksaat erfolgreich durchgeführt wird. 20 gefälschte Datensätze werden nach Ausführung des Befehls in die Tisch der Kunden eingefügt.

Als Nächst. Öffnen Sie die Kundentisch aus der URL, http: // localhost/phpmyadmin, und überprüfen Sie den Inhalt der Tabelle. Sie erhalten die folgende ähnliche Ausgabe, nachdem Sie die Tabelle geöffnet haben.

Abschluss:

Die Datenbank -Seeding -Aufgabe im Laravel -Projekt wurde in diesem Tutorial durch Erstellen einer einfachen Tabelle gezeigt. Eine große Datenmenge manuell für Testzwecke hinzuzufügen, ist zeitaufwändig. Die Datenbanksaatfunktion von Laravel erleichtert diese Aufgabe. Nachdem ich dieses Tutorial gelesen habe, hoffe ich, dass dieses Tutorial LaRavel -Benutzer hilft, den Zweck der ordnungsgemäßen Verwendung von Datenbanksaat zu verstehen.