“I dag skal vi lære om Laravel 9 -fabrikker og seeder med et eksempel. Før vi starter dette prosjektet, må vi vite hvorfor vi trenger fabrikker? Når vi trenger å legge til en rekke falske data eller dummy -data til vårt Laravel -prosjekt for testformål, bruker vi fabrikker. Nå vil vi gi et eksempelprosjekt som viser deg hvordan du kan generere falske data for prosjektet vårt.”
Prosjektkrav er gitt nedenfor
- Mysql 5.6+
- MariaDB 10.2+
- PostgreSql 9.4+
- SQLite 3.8.3+
- SQL Server 2008+
- PHP 8.1
Prosjektarbeidsprosess
- Trinn 1 - Installere Laravel 9
- Trinn 2 -Lage en database og koble til databasen med prosjektet
- Trinn 3- Lag en modell for prosjektet
- Trinn 4- Generer dummy data for prosjektet
- Trinn 5- Kjør og teste prosjektet til slutt
Trinn 1 - Installere Laravel 9
I trinn en må vi gå inn i prosjektkatalogen og kjøre kommandoen gitt nedenfor-
Komponist Create-Project Laravel/Laravel Factory
CD -fabrikk
PHP Artisan server
Trinn 2 - Opprette en database og koble til databasen med prosjektet
I trinn to må vi opprette en database i vår phpmyadmin; For dette fabrikkprosjektet vil vi bruke MariaDB /MySQL 5.7. Nå må vi kopiere lenken nedenfor og lime den inn i nettleseren vår, og deretter klikke på hjemmeknappen på venstre side. Klikk deretter i databaser der vi finner opprette databaseområde. Da må vi legge databasenavnet vårt der. Vi vil bruke "fabrikk" som et databasenavn.
Localhost/phpmyadmin
Nå kobler vi databasen med prosjektet vårt-
Gå til .env fil og konfigurere databasen
Db_connection = mysql
Db_host = 127.0.0.1
DB_PORT = 3306
Db_database = fabrikk (ditt databasenavn)
DB_USERNAME = ROOT (Databasen Brukernavn)
Db_password = (databasepassordet ditt)
Vår databaseforbindelse gjort
Trinn 3- Lag en modell for prosjektet
I trinn tre vil vi lage en tabell som heter Dummy_Data -tabellen med migrasjon ved hjelp av dette ros
PHP Artisan Make: Model DTaxt -M
Når modellen opprettet, må du åpne
“Database \ Migrations \ 2022_06_28_074351_create_dtaxts_table.PHP ”
Legg nå til disse to linjene der
$ tabell-> streng ('navn')-> nullable ();
$ tabell-> String ('detaljer')-> nullable ();
Her er koden
Bruk Illuminate \ Database \ Migrations \ Migration; Bruk Illuminate \ Database \ Schema \ Blueprint;
Bruk Illuminate \ Support \ Facades \ skjema;
Return ny klasse utvider migrasjonen
/**
* Kjør migrasjonene.
*
* @return void
*/
offentlig funksjon opp ()
Skjema :: create ('dtaxts', funksjon (blåkopi $ tabell)
$ tabell-> id ();
$ tabell-> streng ('navn')-> nullable ();
$ tabell-> String ('detaljer')-> nullable ();
$ tabell-> tidsstempler ();
);
/**
* Omvend migrasjonene.
*
* @return void
*/
offentlig funksjon ned ()
Skjema :: dropifistists ('dtaxts');
;
Trenger nå å åpne database \ fabrikker \ dtaxtfactory.PHPAND Legg til den flytende koden
beskyttet $ fillable = [
'Navn',
'Detaljer'
];
Her er filkoden
namespace -app \ modeller;
Bruk Illuminate \ Database \ Eloquent \ Factories \ Hasfactory;
Bruk Illuminate \ Database \ Eloquent \ Model;
Klassedummy_data utvider modellen
bruk hasfactory;
beskyttet $ fillable = [
'Navn',
'Detaljer'
];
Trenger nå å løpe
PHP Artisan migrerer
Trinn 4- Generer dummy data for prosjektet
Trenger nå å lage en fabrikk for prosjektet vårt med denne kommandolinjen-
PHP Artisan Make: FactoryDTaxTFactory -Model = DTaxt
Nå, gå til Factory \ Factory \ Database \ Factories \ DTaxTFactory.PHP
Legg til denne linjen
'navn' => $ this-> faker-> name (),
'Detaljer' => $ this-> faker-> tekst (),
Her er koden
namespace database \ fabrikker;
Bruk Illuminate \ Database \ Eloquent \ Factories \ Factory;
/**
* @Extends \ Illuminate \ Database \ Eloquent \ Factories \ Factory
*/
Klassedummyfactory utvider fabrikken
/**
* Definer modellens standardtilstand.
*
* @return -matrise
*/
Offentlig funksjonsdefinisjon ()
komme tilbake [
'navn' => $ this-> faker-> name (),
'Detaljer' => $ this-> faker-> tekst (),
];
Trinn 5- Kjør og teste prosjektet til slutt
I trinn fem er prosjektet vårt nesten klart; trenger nå å opptre
Før vi gir noe ros, må vi kjøre dette
løp deretter
Skriv deretter
>> dTaxt :: fabrikk ()-> count (10)-> create ();
Resultat -
PS C: \ Brukere \ Bruker \ Dokumenter \ GitHub \ -Laravel-Factory-Example> PHP Artisan Tinker
Psy Shell v0.11.5 (PHP 8.1.3 - CLI) av Justin Hileman
>>> dTaxt :: fabrikk ()-> count (10)-> create ();
=> Illuminate \ Database \ Eloquent \ Collection #3570
alle: [
App \ modeller \ dtaxt #3574
Navn: "Fru. Lura Hirthe ",
Detaljer: "DeseruntsIntrepellendusOfficiisfacere. Nihil sed officia ab id. Dolores Quia Feil VoluptatibusSequi."",
Oppdatert_at: "2022-07-04 12:47:02",
opprettet_at: "2022-07-04 12:47:02",
ID: 31,
,
App \ modeller \ dtaxt #3572
Navn: "Dulce Rogahn",
Detaljer: "Id Voluptas Ipsum Aliquidsequi AB. Autistecumque qui aliquidomnisincidunt. Qui et autem minima veritatis. Corporis magniquis error aut labore rerum."",
Oppdatert_at: "2022-07-04 12:47:03",
opprettet_at: "2022-07-04 12:47:03",
ID: 32,
,
App \ modeller \ dtaxt #3575
Navn: "Mr. Morris Bahringer ",
Detaljer: "Qui eum qui unde nemo. AD aliquamquiautquiacumque."",
Oppdatert_at: "2022-07-04 12:47:03",
opprettet_at: "2022-07-04 12:47:03",
ID: 33,
,
App \ modeller \ dtaxt #3576
Navn: "Francisco Bechtelar",
Detaljer: "Sapiente Rem et earum et. Antar. AutlaborumaspernaturoPtioconsequuntur."",
Oppdatert_at: "2022-07-04 12:47:03",
opprettet_at: "2022-07-04 12:47:03",
ID: 34,
,
App \ modeller \ dtaxt #3577
Navn: "Sadye Turcotte",
Detaljer: "unntatturi i sitte sed nullavoluptatemn acessitatibus nobis omnis. Sint Autem Dignissimospraesentiumadipisci hic Sint. Sed eiusdebitis nihil quaeratexplicabopariature."",
Oppdatert_at: "2022-07-04 12:47:03",
opprettet_at: "2022-07-04 12:47:03",
ID: 35,
,
opprettet_at: "2022-07-04 12:47:03",
ID: 39,
, App \ modeller \ dTaxt #3582
Navn: "Celestino Strosin",
Detaljer: "Wardyuri nihil nostrum cumque facilis autem suscipit. Nam enimquamducimuscorrupti culpa magni. Officiis sit quiarationeenim sitte voluptates."",
Oppdatert_at: "2022-07-04 12:47:03",
opprettet_at: "2022-07-04 12:47:03",
ID: 40,
,
],
>>>
Konklusjon
Til slutt ble prosjektet vårt fullført. Håper dette fabrikkprosjektet vil hjelpe eleven til å forstå Laravel 9 -fabrikken. Ved å bruke dette prosjektet kan du opprette og importere dummy data til prosjektet ditt.