Laravel 9 fabrikk med eksempel

Laravel 9 fabrikk med eksempel

“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

  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

Prosjektarbeidsprosess

  1. Trinn 1 - Installere Laravel 9
  2. Trinn 2 -Lage en database og koble til databasen med prosjektet
  3. Trinn 3- Lag en modell for prosjektet
  4. Trinn 4- Generer dummy data for prosjektet
  5. 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

  • Komponist Dumpautoload

løp deretter

  • PHP Artisan Tinker

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.