Edellytys:
Tarvitset taulukon tietokantaan, johon Laravel-projekti on kytketty. Voit luoda taulukon siirtokomennolla tai manuaalisesti. Olen käyttänyt käyttäjille tässä opetusohjelmassa taulukko CRUD-toiminnon suorittamiseksi resurssiohjaimella. Pöytä on tyhjä. Taulukon rakenne on esitetty alla.
Luo resurssiohjain:
Luo nimetty resurssiohjain suorittamalla seuraava komento terminaalista UserController.
$ php käsityöläinen make: controller UserController --resource
Jos avaat ohjaimen mistä tahansa editorista, näet, että seuraavat koodit on jo kirjoitettu ohjaimeen. Ohjaimen sisälle luodaan seitsemän menetelmää CRUD-toimintojen suorittamiseksi automaattisesti.
nimitila App \ Http \ Controllers;käytä Illuminate \ Http \ Request;
luokka UserController laajentaa ohjainta
/ **
* Näytä luettelo resurssista.
*
* @return \ Illuminate \ Http \ Response
* /
julkisten toimintojen hakemisto ()
//
/ **
* Näytä uuden resurssin luomislomake.
*
* @return \ Illuminate \ Http \ Response
* /
julkinen toiminto luoda ()
//
/ **
* Tallenna äskettäin luotu resurssi varastoon.
*
* @param \ Illuminate \ Http \ Request $ -pyyntö
* @return \ Illuminate \ Http \ Response
* /
julkinen toimintokauppa (Request $ request)
//
/ **
* Näytä määritetty resurssi.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
julkisten toimintojen näyttely ($ id)
//
/ **
* Näytä määritetyn resurssin muokkauslomake.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
julkisen toiminnon muokkaus ($ id)
//
/ **
* Päivitä määritetty resurssi tallennustilassa.
*
* @param \ Illuminate \ Http \ Request $ -pyyntö
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
julkisten toimintojen päivitys (Request $ request, $ id)
//
/ **
* Poista määritetty resurssi tallennustilasta.
*
* @param int $ id
* @return \ Illuminate \ Http \ Response
* /
julkinen toiminto tuhota ($ id)
//
Resurssireitit:
Lisää seuraava reitti kentälle UserController luoda resurssireittejä verkko.php tiedosto.
Route :: resurssi ('käyttäjät', 'UserController');Suorita nyt seuraava komento terminaalista tarkistaaksesi nykyisen reittiluettelon verkko.php tiedosto.
$ php käsityöläisten reitti: luetteloSeuraavat reittitiedot luodaan Route :: resource () -menetelmää varten. Seitsemän tapaa kutsutaan luomalla seitsemän reittiä. Näiden reittien käyttö selitetään myöhemmin tämän opetusohjelman seuraavassa osassa.
Lisää seuraavat rivit tekstin alkuun UserController.php tiedosto käyttäjän mallin tuomiseksi, Hash-palvelu salasanan hajauttamiseksi ja DB-palvelu tietokantatoimintoja varten.
käytä App \ Käyttäjä;käytä Hash;
käytä DB: tä
Lisää tietue:
Muokkaa luoda() menetelmä UserController seuraavalla koodilla. Täällä Käyttäjä malli on luotu uusien tietueiden lisäämiseksi. Kun olet määrittänyt pakolliset arvot, Tallentaa() -toimintoa kutsutaan lisäämään uusi tietue opiskelijoille pöytä.
julkinen toiminto luoda ()$ user = uusi käyttäjä;
$ user-> name = 'fahmida';
$ user-> email = '[email protected]';
$ user-> password = Hash :: make ('12345');
yrittää
$ käyttäjä-> tallenna ();
kaiku "Tietue on lisätty";
catch (\ Illuminate \ Database \ QueryException $ e)
kaiku "Kopio merkintä";
Reitti, johon soitetaan luoda() menetelmä UserController On 'käyttäjät / luo'. Suorita seuraava URL-osoite selaimesta. Jos tietue on asetettu oikein, seuraava tulos tulee näkyviin.
http: // localhost / laravelpro / public / users / create
Jos nyt tarkistat taulukon tietokannasta, saat seuraavan tuloksen.
Näytä kaikki tietueet:
Muokkaa indeksi() menetelmä UserController seuraavalla koodilla kaikkien tietueiden hakemiseksi käyttäjille taulukon ja näyttää arvot nimi ja sähköposti.
julkisten toimintojen hakemisto ()$ users = DB :: select ('select * from users');
foreach ($ käyttäjää $ käyttäjänä)
echo "Nimi: $ käyttäjä-> nimi";
kaiku "
Sähköposti: $ käyttäjä-> sähköposti ";
Reitti, johon soitetaan indeksi() menetelmä UserController On 'käyttäjille'. Suorita seuraava URL-osoite selaimesta.
http: // localhost / laravelpro / public / users
Seuraava lähtö tulee näkyviin.
Valitse tietty tietue:
Muokkaa näytä() menetelmä UserController seuraavalla koodilla tietueen hakemiseksi käyttäjille taulukko, joka sisältää 1 että id -kenttä ja näytä nimi.
julkisten toimintojen näyttely ($ id)$ user = DB :: select ('valitse * käyttäjistä, joissa id ='.$ id);
echo "Käyttäjän nimi on". $ käyttäjä [0] -> nimi."
";
Reitti, johon soitetaan näytä() menetelmä UserController On 'käyttäjää / id'. Suorita seuraava URL-osoite selaimesta.
http: // localhost / laravelpro / public / users / 1
Seuraava tulos tulee näkyviin.
Päivitä tietue:
Kaksi menetelmää määritetään lähinnä resurssiohjaimessa tietokantatietueen päivittämiseksi. Nämä ovat muokata() ja päivittää() missä tietueen tiedot päivittyvät muokatulla lomakkeella. Muokkauslomaketta ei kuitenkaan käytetä tässä. Joten, vain muokata() - menetelmää käytetään tietyn tietueen päivittämiseen opiskelijoille pöytä. Tietyn tietueen nykyinen arvo tulostetaan ennen päivityskyselyn suorittamista ja sen jälkeen.
julkisen toiminnon muokkaus ($ id)$ user = DB :: select ('valitse * käyttäjistä, joissa id ='.$ id);
echo "Käyttäjän nykyinen sähköpostiosoite on". $ user [0] -> sähköposti."
";
$ email = '[sähköposti suojattu]';
$ user = DB :: select ("Päivitä käyttäjät set email = '$ email'where id =".$ id);
$ user = DB :: select ('valitse * käyttäjistä, joissa id ='.$ id);
echo "Käyttäjän sähköposti päivityksen jälkeen on". $ käyttäjä [0] -> sähköposti;
Reitti, johon soitetaan muokata() menetelmä UserController On 'users / id / edit'. Suorita seuraava URL-osoite selaimesta.
http: // localhost / laravelpro / public / users / 1 / edit
Seuraava tulos tulee näkyviin.
Poista tietue:
Tapa () -menetelmä on määritetty kaikkien tietueiden poistamiseksi taulukosta. Tietueen poistamisen reitti kulkee toisesta menetelmästä. Täällä olen käyttänyt näytä() menetelmä luoda hyperlinkki menetelmän loppuun lisätyn tietueen poistamiseksi.
julkisten toimintojen näyttely ($ id)$ user = DB :: select ('valitse * käyttäjistä, joissa id ='.$ id);
echo "Käyttäjän nimi on". $ käyttäjä [0] -> nimi."
";
kaiku "Poistaa";
Lisää seuraava koodi tuhota() menetelmä tietyn tietueen poistamiseksi.
julkinen toiminto tuhota ($ id)$ user = DB :: select ('Poista käyttäjistä, joissa id ='.$ id);
echo "Tietue on poistettu";
Lisää reitti sisään verkko.php tiedosto soittamista varten tuhota() menetelmä.
Reitti :: get ('/ users / delete / id', '[email protected]');Napsautettuasi poistolinkkiä seuraava tulos tulee näkyviin.
Päätelmä:
Resurssiohjaimen käyttöä ja reittiresurssin käsitettä selitetään yksityiskohtaisesti tässä opetusohjelmassa CRUD-operaatiota käyttämällä. Toivon, että se auttaa uusia Laravel-käyttäjiä toteuttamaan CRUD-toiminnon helposti projektissaan.