/ / Laravel: Rozdiel medzi staviteľom schémy a výrečným niekým? - databáza, schéma, laravel, staviteľ, výrečný

Laravel: Rozdiel medzi staviteľom schémy a výrečným niekým? - databáza, schéma, laravel, staviteľ, výrečný

Som nový pre Laravel. Ak teda môžem generovať tabuľky pomocou nástroja na tvorbu schém a následne vyhľadávať dáta pomocou dopytov, ako je napr DB::table("user")->find(1), kde sa Elloquent hodí do celej scény? Aký účel slúži?

odpovede:

6 pre odpoveď č. 1

Výrečnosť je názov ORM (Object-relačné mapovanie), ktorý je dodávaný s Laravelom. Eloquent umožňuje interakciu s vašimi tabuľkami, ako keby boli objekty, avšak Eloquent nevie o skutočných stĺpcoch, ktoré máte na stole.

Považme to za jednoduché User Model. Chceme, aby tento model nahlásil záznamy na našich stránkach users stôl.

class User extends Eloquent {

protected $table = "users";

}

To, že existuje veľmi jednoduchý model. Teraz namiesto toho, aby ste sa takto spýtali.

$user = DB::table("user")->find(1);

Takýto dotaz môžete vykonať.

$user = User::find(1);

Eloquent sám používa vlastný nástroj na tvorbu dopytov, ale spadá späť do štandardného nástroja na tvorbu dopytov. To znamená, že má k dispozícii všetky metódy v nástroji Builder dotazov a ďalšie.

Výhody tu sú:

  1. Pri každom hovore nie je potrebné zadať názov vašej tabuľky.
  2. Kód číta oveľa lepšie, je to syntaktický cukor.
  3. Môžete vytvárať zložité vzťahy medzi tabuľkami a používať dychtivé načítanie.
  4. Môžete využiť funkcie, ako je napríklad ochrana hromadného priraďovania a nastavovače / getri.
  5. Získate všetky výhody používania nástroja na tvorbu dopytov, takže môžete ľahko prepínať medzi DBMS.

Len som sa dotkol Eloquenta, je toho oveľa viac, navrhujem, aby ste sa pozreli na nasledujúce zdroje.