Būtina sąlyga:
Jums reikės lentelės duomenų bazėje, kurioje prijungtas „Laravel“ projektas. Lentelę galite sukurti naudodami komandą migrate arba rankiniu būdu. Aš naudoju vartotojų lentelę šioje pamokoje, kad atliktumėte CRUD operaciją naudodami išteklių valdiklį. Lentelė dabar tuščia. Lentelės struktūra parodyta žemiau.
Sukurkite išteklių valdiklį:
Paleiskite šią komandą iš terminalo, kad sukurtumėte pavadintą išteklių valdiklį „UserController“.
$ php amatininkas: kontroleris „UserController“ - šaltinis
Jei atidarysite valdiklį iš bet kurio redaktoriaus, pamatysite, kad šie kodai jau parašyti valdiklyje. Valdiklio viduje automatiškai sukuriami septyni metodai CRUD operacijoms atlikti.
vardų srities programa \ Http \ valdikliai;naudoti Illuminate \ Http \ Request;
klasės „UserController“ išplečia valdiklį
/ **
* Rodyti išteklių sąrašą.
*
* @return \ Illuminate \ Http \ Response
* /
viešųjų funkcijų rodyklė ()
//
/ **
* Parodykite naujo šaltinio kūrimo formą.
*
* @return \ Illuminate \ Http \ Response
* /
viešoji funkcija sukurti ()
//
/ **
* Laikykite naujai sukurtą išteklių saugykloje.
*
* @param \ Illuminate \ Http \ Request $ užklausa
* @return \ Illuminate \ Http \ Response
* /
viešųjų funkcijų parduotuvė („Request $ request“)
//
/ **
* Rodyti nurodytą šaltinį.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
viešų funkcijų šou ($ id)
//
/ **
* Parodykite nurodyto šaltinio redagavimo formą.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
viešosios funkcijos redagavimas ($ id)
//
/ **
* Atnaujinkite nurodytą išteklių saugykloje.
*
* @param \ Illuminate \ Http \ Request $ užklausa
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
viešosios funkcijos atnaujinimas (užklausa $ request, $ id)
//
/ **
* Pašalinkite nurodytą šaltinį iš saugyklos.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
viešosios funkcijos sunaikinimas ($ id)
//
Išteklių keliai:
Pridėkite šį maršrutą „UserController“ sukurti išteklių maršrutus internetas.php failą.
Route :: resursas ('vartotojai', 'UserController');Dabar paleiskite šią komandą iš terminalo, kad patikrintumėte dabartinį maršrutų sąrašą iš internetas.php failą.
$ php amatininkų maršrutas: sąrašasNaudojant „Route :: resource ()“ metodą, sukuriama ši maršruto informacija. yra sukurti septyni maršrutai, skirti iškviesti septynis metodus. Šių maršrutų naudojimas paaiškinamas vėliau kitoje šios instrukcijos dalyje.
Pridėkite šias eilutes pradžios pradžioje „UserController“.php failas, skirtas importuoti vartotojo modelį, „Hash“ paslauga slaptažodžio maišymui ir „DB“ paslauga duomenų bazės operacijoms atlikti.
naudoti „App \ User“;naudoti Hash;
naudoti DB
Įterpti įrašą:
Keisti sukurti () metodas „UserController“ su tokiu kodu. Čia yra objektas Vartotojas sukurtas modelis įterpti naujus įrašus. Priskyrus privalomas reikšmes, sutaupyti() iškviečiama funkcija įterpti naują įrašą į studentų stalo.
viešoji funkcija sukurti ()$ vartotojas = naujas vartotojas;
$ vartotojas-> vardas = 'fahmida';
$ vartotojas-> email = '[el. paštas apsaugotas]';
$ user-> password = Hash :: make ('12345');
bandyti
$ vartotojas-> išsaugoti ();
aidas "Įrašas įterptas";
pagauti (\ Illuminate \ Database \ QueryException $ e)
aidas „Dublikatas įrašo“;
Maršrutas, kuriuo skambinama sukurti () metodas „UserController“ yra 'vartotojai / sukurti". Paleiskite šį URL iš naršyklės. Jei įrašas įterptas tinkamai, pasirodys tokia išvestis.
http: // localhost / laravelpro / public / users / create
Dabar, jei patikrinsite lentelę iš duomenų bazės, gausite šią išvestį.
Peržiūrėti visus įrašus:
Keisti indeksas() metodas „UserController“ su šiuo kodu, norėdami gauti visus įrašus iš vartotojų lentelę ir rodyti vardas ir paštu.
viešųjų funkcijų rodyklė ()$ users = DB :: select ('pasirinkite * iš vartotojų');
foreach ($ vartotojai kaip $ vartotojas)
aidas "Vardas: $ vartotojas-> vardas";
aidas "
Paštas: $ user-> email ";
Maršrutas, kuriuo reikia skambinti indeksas() metodas „UserController“ yra 'vartotojų". Paleiskite šį URL iš naršyklės.
http: // localhost / laravelpro / public / users
Pasirodys tokia išvestis.
Pasirinkite konkretų įrašą:
Keisti Rodyti() metodas „UserController“ su šiuo kodu, norėdami gauti įrašą iš vartotojų lentelę, kurioje yra 1 viduje konors id lauką ir parodykite vardas.
viešų funkcijų šou ($ id)$ user = DB :: select ('pasirinkite * iš vartotojų, kur id ='.$ id);
echo "Vartotojo vardas yra". $ user [0] -> vardas."
";
Maršrutas, kuriuo skambinama Rodyti() metodas „UserController“ yra 'vartotojai / id". Paleiskite šį URL iš naršyklės.
http: // localhost / laravelpro / public / users / 1
Pasirodys tokia išvestis.
Atnaujinti įrašą:
Išteklių valdiklyje daugiausia apibrėžti du metodai, skirti atnaujinti duomenų bazės įrašą. Šitie yra Redaguoti() ir atnaujinti () kur įrašo duomenys atnaujinami naudojant bet kurią redaguotą formą. Bet čia nenaudojama jokia redagavimo forma. Taigi, tik Redaguoti() metodas naudojamas atnaujinti tam tikrą įrašą studentų stalo. Dabartinė konkretaus įrašo vertė spausdinama prieš ir po atnaujinimo užklausos vykdymo.
viešosios funkcijos redagavimas ($ id)$ user = DB :: select ('pasirinkite * iš vartotojų, kur id ='.$ id);
echo "Dabartinis vartotojo el. pašto adresas yra". $ user [0] -> el. paštas."
";
$ email = '[el. paštas apsaugotas]';
$ user = DB :: select ("Atnaujinti naudotojų rinkinį email = '$ email'where id =".$ id);
$ user = DB :: select ('pasirinkite * iš vartotojų, kur id ='.$ id);
echo "Vartotojo el. paštas po atnaujinimo yra". $ vartotojas [0] -> el. paštas;
Maršrutas, kuriuo skambinama Redaguoti() metodas „UserController“ yra 'vartotojai / id / redaguoti". Paleiskite šį URL iš naršyklės.
http: // localhost / laravelpro / public / users / 1 / edit
Pasirodys tokia išvestis.
Ištrinti įrašą:
sunaikinti () metodas yra apibrėžtas norint ištrinti bet kokį įrašą iš lentelės. Bet įrašo ištrynimo kelias eina iš kito metodo. Čia aš naudojau Rodyti() metodas hipersaitui sukurti įrašo, kuris yra pridėtas metodo pabaigoje, ištrynimui.
viešų funkcijų šou ($ id)$ user = DB :: select ('pasirinkite * iš vartotojų, kur id ='.$ id);
echo "Vartotojo vardas yra". $ user [0] -> vardas."
";
aidas "Ištrinti";
Įtraukite šį kodą į sunaikinti () metodas ištrinti tam tikrą įrašą.
viešosios funkcijos sunaikinimas ($ id)$ user = DB :: select ('Ištrinti iš vartotojų, kur id ='.$ id);
echo "Įrašas ištrintas";
Pridėkite maršrutą internetas.php failas, skirtas skambinti sunaikinti () metodas.
Route :: get ('/ users / delete / id', '[email protected]');Spustelėjus nuorodą „Ištrinti“, pasirodys tokia išvestis.
Išvada:
Išteklių valdiklio naudojimas ir maršruto išteklių sąvoka yra išsamiai paaiškinta šioje mokymo programoje naudojant CRUD operaciją. Tikiuosi, tai padės naujiems „Laravel“ vartotojams lengvai įgyvendinti CRUD operaciją savo projekte.