Předpoklad:
Budete potřebovat tabulku v databázi, kde je připojen projekt Laravel. Tabulku můžete vytvořit pomocí příkazu migrate nebo ručně. Použil jsem uživatelů tabulky v tomto kurzu provedete operaci CRUD pomocí řadiče prostředků. Tabulka je nyní prázdná. Struktura tabulky je uvedena níže.
Vytvořte řadič prostředků:
Spusťte následující příkaz z terminálu a vytvořte řadič prostředků s názvem UserController.
$ php artisan make: controller UserController --zdroj
Pokud otevřete ovladač z libovolného editoru, uvidíte, že následující kódy jsou již v ovladači zapsány. Uvnitř řadiče je automaticky vytvořeno sedm metod pro provádění operací CRUD.
jmenný prostor App \ Http \ Controllers;použijte Illuminate \ Http \ Request;
třída UserController rozšiřuje Controller
/ **
* Zobrazte seznam zdrojů.
*
* @return \ Illuminate \ Http \ Response
* /
index veřejné funkce ()
//
/ **
* Zobrazit formulář pro vytvoření nového zdroje.
*
* @return \ Illuminate \ Http \ Response
* /
public function create ()
//
/ **
* Uložte nově vytvořený zdroj do úložiště.
*
* @param \ Illuminate \ Http \ Request $ request
* @return \ Illuminate \ Http \ Response
* /
veřejné úložiště funkcí (požadavek $ požadavek)
//
/ **
* Zobrazit zadaný zdroj.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
veřejná funkční show ($ id)
//
/ **
* Zobrazit formulář pro úpravy zadaného zdroje.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
úprava veřejné funkce ($ id)
//
/ **
* Aktualizujte zadaný zdroj v úložišti.
*
* @param \ Illuminate \ Http \ Request $ request
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
aktualizace veřejné funkce (požadavek $ požadavek, $ id)
//
/ **
* Odeberte zadaný zdroj z úložiště.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
veřejné funkce zničit ($ id)
//
Trasy zdrojů:
Přidejte následující trasu pro UserController vytvořit trasy zdrojů v síť.php soubor.
Route :: resource ('users', 'UserController');Nyní spusťte následující příkaz z terminálu a zkontrolujte aktuální seznam tras z web.php soubor.
Trasa řemeslníka $ php: seznamNásledující informace o trase jsou generovány pro použití metody Route :: resource (). je vytvořeno sedm tras pro volání sedmi metod. Použití těchto tras je vysvětleno dále v další části tohoto kurzu.
Přidejte následující řádky na začátek UserController.php soubor pro import modelu uživatele, služba Hash pro hašování hesla a služba DB pro databázové operace.
používat App \ User;použijte Hash;
použijte DB
Vložit záznam:
Upravte vytvořit() metoda UserController s následujícím kódem. Zde je objekt Uživatel model je vytvořen pro vložení nových záznamů. Po přiřazení povinných hodnot se zobrazí Uložit() je volána funkce pro vložení nového záznamu do studenti stůl.
public function create ()$ user = nový uživatel;
$ user-> name = 'fahmida';
$ user-> email = '[email protected]';
$ user-> heslo = Hash :: make ('12345');
Snaž se
$ user-> save ();
echo "Záznam je vložen";
catch (\ Illuminate \ Database \ QueryException $ e)
echo "Duplicitní záznam";
Trasa k volání vytvořit() metoda UserController je 'uživatelé / vytvořit''. Spusťte následující adresu URL z prohlížeče. Pokud je záznam vložen správně, zobrazí se následující výstup.
http: // localhost / laravelpro / public / users / create
Nyní, pokud zkontrolujete tabulku z databáze, získáte následující výstup.
Zobrazit všechny záznamy:
Upravte index() metoda UserController s následujícím kódem k načtení všech záznamů z uživatelů tabulka a zobrazení hodnot název a e-mailem.
index veřejné funkce ()$ users = DB :: select ('select * from users');
foreach ($ users as $ user)
echo "Jméno: $ user-> jméno";
ozvěna "
E-mail: $ user-> email ";
Trasa k volání index() metoda UserController je 'uživatelů''. Spusťte následující adresu URL z prohlížeče.
http: // localhost / laravelpro / public / users
Zobrazí se následující výstup.
Vyberte konkrétní záznam:
Upravte ukázat() metoda UserController s následujícím kódem k načtení záznamu z uživatelů tabulka, která obsahuje 1 v id pole a zobrazit hodnotu název.
veřejná funkční show ($ id)$ user = DB :: select ('select * from users where id ='.$ id);
echo "Jméno uživatele je". $ user [0] -> jméno."
";
Trasa k volání ukázat() metoda UserController je 'uživatelé / id''. Spusťte následující adresu URL z prohlížeče.
http: // localhost / laravelpro / public / users / 1
Zobrazí se následující výstup.
Aktualizovat záznam:
V řadiči prostředků jsou pro aktualizaci záznamu databáze definovány hlavně dvě metody. Tyto jsou Upravit() a Aktualizace() kde se data záznamu aktualizují pomocí libovolného upraveného formuláře. Zde se ale nepoužívá žádný formulář pro úpravy. Takže pouze Upravit() metoda se používá k aktualizaci konkrétního záznamu studenti stůl. Aktuální hodnota konkrétního záznamu se vytiskne před a po provedení aktualizačního dotazu.
úprava veřejné funkce ($ id)$ user = DB :: select ('select * from users where id ='.$ id);
echo "Aktuální e-mail uživatele je". $ uživatel [0] -> e-mail."
";
$ email = '[email protected]';
$ user = DB :: select ("Aktualizovat sadu uživatelů email = '$ email'where id =".$ id);
$ user = DB :: select ('select * from users where id ='.$ id);
echo "E-mail uživatele po aktualizaci je". $ uživatel [0] -> e-mail;
Trasa k volání Upravit() metoda UserController je 'uživatelé / id / upravit''. Spusťte následující adresu URL z prohlížeče.
http: // localhost / laravelpro / public / users / 1 / upravit
Zobrazí se následující výstup.
Smazat záznam:
metoda destru () je definována k odstranění jakéhokoli záznamu z tabulky. Cesta pro odstranění záznamu však prochází z jiné metody. Zde jsem použil ukázat() metoda k vytvoření hypertextového odkazu pro odstranění záznamu, který je přidán na konec metody.
veřejná funkční show ($ id)$ user = DB :: select ('select * from users where id ='.$ id);
echo "Jméno uživatele je". $ user [0] -> jméno."
";
ozvěna "Vymazat";
Přidejte následující kód do zničit() metoda odstranění konkrétního záznamu.
veřejné funkce zničit ($ id)$ user = DB :: select ('Delete from users where id ='.$ id);
echo "Záznam je smazán";
Přidejte trasu dovnitř web.php soubor pro volání zničit() metoda.
Route :: get ('/ users / delete / id', '[email protected]');Po kliknutí na odkaz pro smazání se zobrazí následující výstup.
Závěr:
Použití řadiče prostředků a koncepce prostředku trasy jsou podrobně vysvětleny v tomto kurzu pomocí operace CRUD. Doufám, že to pomůže novým uživatelům Laravelu snadno implementovat operaci CRUD ve svém projektu.