Factory Laravel 9 con esempio

Factory Laravel 9 con esempio

“Oggi impareremo le fabbriche di Laravel 9 e la semina con un esempio. Prima di iniziare questo progetto, dobbiamo sapere perché abbiamo bisogno di fabbriche? Quando dobbiamo aggiungere una serie di dati falsi o dati fittizi al nostro progetto Laravel per scopi di test, utilizziamo le fabbriche. Ora daremo un progetto di esempio che ti mostra come generare dati falsi per il nostro progetto."

I requisiti del progetto sono riportati di seguito

  1. Mysql 5.6+
  2. Mariadb 10.2+
  3. PostgreSQL 9.4+
  4. SQLite 3.8.3+
  5. SQL Server 2008+
  6. PHP 8.1

Processo di lavoro del progetto

  1. Passaggio 1 - Installazione di Laravel 9
  2. Passaggio 2 -Creare un database e connettere il database con il progetto
  3. Passaggio 3- Crea un modello per il progetto
  4. Passaggio 4- Genera dati fittizi per il progetto
  5. Passaggio 5- Infine, eseguire e testare il progetto

Passaggio 1 - Installazione di Laravel 9

Nel primo passo, dobbiamo entrare nella directory del progetto ed eseguire il comando indicato di seguito-

compositore crea project laravel/laravel factory
CD Factory
PHP Artisan Serve

Passaggio 2 - Creazione di un database e collegamento del database con il progetto

Nel secondo passaggio, dobbiamo creare un database nel nostro PhpMyAdmin; Per questo progetto di fabbrica, useremo MariaDB /MySQL 5.7. Ora, dobbiamo copiare il collegamento seguente e incollarlo nel nostro browser, quindi fare clic sul pulsante Home sul lato sinistro. Quindi fare clic nei database lì troveremo l'area del database. Quindi dobbiamo mettere lì il nostro nome di database. Useremo "Factory" come nome del database.

localhost/phpmyadmin

Ora collegheremo il database al nostro progetto-

Vai al .File ENV e configurare il database

Db_connection = mysql
Db_host = 127.0.0.1
Db_port = 3306
Db_database = factory (nome del database)
Db_username = root (nome utente del database)
Db_password = (password del database)

La nostra connessione al database è eseguita

Passaggio 3- Crea un modello per il progetto

Nel primo passaggio, creeremo una tabella chiamata tabella Dummy_data con migrazione usando questo lode

PHP Artisan Make: Model Dtaxt -m


Una volta creato il modello, è necessario aprire

“Database \ Migrations \ 2022_06_28_074351_Create_dtaxts_table.PHP "


Ora aggiungi queste due righe lì

$ table-> string ('name')-> nulllable ();
$ table-> string ('dettagli')-> nulllable ();

Ecco il codice

Utilizzare illuminate \ database \ migrations \ migration; utilizzare illuminate \ database \ schema \ Blueprint;
Usa illuminare \ Support \ Facedes \ Schema;
restituire la nuova classe estende la migrazione

/**
* Esegui le migrazioni.
*
* @return void
*/
funzione pubblica up ()

Schema :: create ('dtaxts', function (blueprint $ table)
$ table-> id ();
$ table-> string ('name')-> nulllable ();
$ table-> string ('dettagli')-> nulllable ();
$ table-> timestamps ();
);

/**
* Invertire le migrazioni.
*
* @return void
*/
funzione pubblica down ()

Schema :: dropifexists ('dtaxts');

;

Ora, devi aprire il database \ Factories \ dtaxtfactory.Phpand Aggiungi il codice a flusso

Protected $ riempibile = [
'nome',
'dettagli'
];
Ecco il codice file
Modelspace App \ Models;
Usa illuminate \ database \ eloquent \ fabbriche \ hasfactory;
Usa illuminate \ database \ eloquent \ modello;
Class Dummy_data estende il modello

Usa Hasfactory;
Protected $ riempibile = [
'nome',
'dettagli'
];

Ora ho bisogno di correre

PHP Artisan Migrate

Passaggio 4- Genera dati fittizi per il progetto

Ora, devi creare una fabbrica per il nostro progetto con questa riga di comando-

PHP Artisan Make: FactoryDtaxtFactory -Model = dtaxt

Ora vai a Factory \ Factory \ Database \ Factories \ DtaxtFactory.PHP

Aggiungi questa riga

'name' => $ this-> faker-> name (),
'Dettagli' => $ this-> faker-> text (),

Ecco il codice

Database dello spazio dei nomi \ fabbriche;
Usa Illuminate \ Database \ Eloquent \ Factories \ Factory;
/**
* @Extends \ Illuminate \ Database \ Eloquent \ Factories \ Factory
*/
Class DummyFactory estende la fabbrica

/**
* Definisci lo stato predefinito del modello.
*
* Array @return
*/
Definizione della funzione pubblica ()

ritorno [
'name' => $ this-> faker-> name (),
'Dettagli' => $ this-> faker-> text (),
];

Passaggio 5- Infine, eseguire e testare il progetto

Nel passaggio cinque, il nostro progetto è quasi pronto; Ora devi esibirsi

Prima di dare qualsiasi lode, dobbiamo eseguirlo

  • compositore dumbautoload

Quindi corri

  • PHP Artisan Tinker

Quindi digita

>> dtaxt :: factory ()-> count (10)-> create ();

Risultato -

PS C: \ Users \ User \ Documents \ github \ -laravel-factory-example> php artigiano artigianato
Psy Shell V0.11.5 (PHP 8.1.3 - cli) di Justin Hileman
>>> dtaxt :: factory ()-> count (10)-> create ();
=> Illuminate \ database \ eloquent \ collection #3570

Tutto: [
App \ Models \ dtaxt #3574
Nome: "Mrs. Lura hirthe ",
Dettagli: "DeseruntsIntrepellendUsofficifere. Nihil Sed Officia AB ID. Dolores QUIA ERROR VOLUPUTATIBUSESEVER.",
aggiornato_at: "2022-07-04 12:47:02",
creato_at: "2022-07-04 12:47:02",
ID: 31,
,
App \ Models \ dtaxt #3572
Nome: "Dulce Rogahn",
Dettagli: "Id voruptas ipsum aliquid sequen. Autistecumque qui aliquidomnisincidunt. Qui et AutoM MIMINA VERITATIS. Corpois magniquis Errore AUT LABORE RERUM.",
aggiornato_at: "2022-07-04 12:47:03",
creato_at: "2022-07-04 12:47:03",
ID: 32,
,
App \ Models \ dtaxt #3575
Nome: "Mr. Morris Bahringer ",
Dettagli: "Qui eum qui unde nemo. Ad alliquamquiautquiacumque.",
aggiornato_at: "2022-07-04 12:47:03",
creato_at: "2022-07-04 12:47:03",
ID: 33,
,
App \ Models \ dtaxt #3576
Nome: "Francisco Bechtelar",
Dettagli: "Sapiente rem et earum et. Assumenda id natusateneturpossimus sed. AutlaborumasperNaturopTioconsequuntur.",
aggiornato_at: "2022-07-04 12:47:03",
creato_at: "2022-07-04 12:47:03",
ID: 34,
,
App \ Models \ dtaxt #3577
Nome: "Sadye Turcotte",
Dettagli: "Transturi in sit sed nullavoluptatennessitaiBus nobis omnis. Sint Autem dignissimospraesentiumadipisci hic sint. Sed eiusdebitis nihil quaieratexplicabopariatur.",
aggiornato_at: "2022-07-04 12:47:03",
creato_at: "2022-07-04 12:47:03",
ID: 35,
,
creato_at: "2022-07-04 12:47:03",
ID: 39,
, App \ modelli \ dtaxt #3582
Nome: "Celestino Strosin",
Dettagli: "Transurri Nihil Nostrum Cumque Facilis Autem Suscipit. Nam enimquamducimusCorrupti culpa magni. Officeis sit QuiarationEenim sit vorutates.",
aggiornato_at: "2022-07-04 12:47:03",
creato_at: "2022-07-04 12:47:03",
ID: 40,
,
",

>>>

Conclusione

Infine, il nostro progetto è stato completato con successo. Spero che questo progetto di fabbrica aiuti lo studente a comprendere la fabbrica di Laravel 9. Utilizzando questo progetto, puoi creare e importare dati fittizi nel tuo progetto.