...
✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Parempi tapa luoda Laravel-ohjain CRUD-operaatioita varten

25

Laravel toimii MVC (Model-View-Controller) -arkkitehtuurilla. Jos käytät sovellusta Laravel-kehyksessä, sinun on luotava mallisi, näkymä, ohjaimet sovelluksellesi.

Laravelissa voidaan luoda ohjain ja malli komentoriviliittymän kautta. Laravel-käsityöläinen on komentoriviliittymä, joka tarjoaa useita komentoja, jotka auttavat meitä rakentamaan sovellusta. Voimme ja meidän pitäisi luoda ohjain käsityöläiskomennolla.

Luo Laravel-ohjain

Oletetaan, että työskentelet taustalla ja haluat suorittaa CRUD-operaatioita sivuilla. Tämä tarkoittaa, että sinun on rakennettava järjestelmä sivujen hallitsemiseksi, joka sisältää sivujen luomisen, hakemisen, päivittämisen ja poistamisen. Tietenkin tätä tehtävää varten sinun on luotava ohjain.

Normaalisti ihmiset suorittavat komennon php artisan make:controller PageController. Tämä komento luo tiedoston PageController.phphakemistoon app / Http / Controllers.

Huomaa: Sinun on suoritettava tämä komento projektin juurihakemistossa komentoriviliittymän avulla.

PageController.php

<?php
 
namespace AppHttpControllers;
 
use IlluminateHttpRequest;
 
class PageController extends Controller
{
    //
}

Tässä generoidussa ohjaimessa sinun on kirjoitettava menetelmiä ja määritettävä reitit vastaavasti. Jokaiselle menetelmälle sinun on kirjoitettava erillinen reitti.

Esimerkiksi. lisätään yksi menetelmä index()ja määritetään sille reitti.

<?php
 
namespace AppHttpControllers;
 
use IlluminateHttpRequest;
 
class PageController extends Controller
{
    public function index() {
        //do operations here
    }
}

Jos haluat kutsua tätä index()toimintoa reittitiedostoon, meidän on lisättävä alla oleva koodi.

reitit / web.php

Route::get('pages', 'PageController@index');

Sama prosessi koskee kutakin lisämenetelmää.

Tässä virtauksessa ei ole mitään vikaa. Mutta tätä ei suositella. Laravelin suosion takana on useita syitä. Yksi syy on heidän voimakkaat edistyneet käsityöläiskomennot.

Parempi tapa luoda Laravel-ohjain

Laravelissa meidän ei tarvitse kirjoittaa kutakin menetelmää ja määrittää erillinen reitti kullekin menetelmälle. Käsityöläiskomennolla voimme luoda ohjaimen ennalta määritetyillä menetelmillä. Ja vain kirjoittamalla yhden reitin, Laravel kutsuu automaattisesti sopivat menetelmät.

Tämän sanottuasi, avaa komentoriviliittymä projektisi juurihakemistossa ja suorita alla oleva komento. Muista, että tällä kertaa lisäämme –resurssin make: controller -komentoon.

php artisan make:controller PageController --resource

Nyt luotu PageController.phpnäyttää kuten alla.

PageController.php

<?php
 
namespace AppHttpControllers;
 
use IlluminateHttpRequest;
 
class PageController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return IlluminateHttpResponse
     */
    public function index()
    {
        //
    }
 
    /**
     * Show the form for creating a new resource.
     *
     * @return IlluminateHttpResponse
     */
    public function create()
    {
        //
    }
 
    /**
     * Store a newly created resource in storage.
     *
     * @param  IlluminateHttpRequest  $request
     * @return IlluminateHttpResponse
     */
    public function store(Request $request)
    {
        //
    }
 
    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function show($id)
    {
        //
    }
 
    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function edit($id)
    {
        //
    }
 
    /**
     * Update the specified resource in storage.
     *
     * @param  IlluminateHttpRequest  $request
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function update(Request $request, $id)
    {
        //
    }
 
    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function destroy($id)
    {
        //
    }
}

Saimme menetelmät, kuten indeksointi, luominen, tallentaminen, näyttäminen, muokkaaminen, päivittäminen, tuhoaminen automaattisesti. Voit lukea kunkin menetelmän kommentit, joissa selitetään, mitä kukin menetelmä tekee. Määritetään nyt sen reitti.

reitit / web.php

Route::resource('pages', 'PageController');

Tämä kekseliäs reitti luo useita reittejä eri toimintojen käsittelemiseksi. Jos haluat saada lisätietoja toiminnoista, suorita komento php artisan route:list. Sivureitille näet tuloksen kuvakaappauksen mukaisesti.

Tämä tulos antaa sinulle käsityksen HTTP-menetelmästä, URL-osoitteesta ja siitä, mikä menetelmä käyttää määritettyä URL-osoitetta.

Esimerkiksi, jos käytät URL-osoitetta YOUR_SITE_DOMAIN / sivusi GET-menetelmällä, se antaa kutsun index()PageController -menetelmälle.

Jos haluat luoda uuden sivun, URL-osoite on YOUR_SITE_DOMAIN / sivut / luo. Se kutsuu create()menetelmää, jossa sinun on ladattava näkymä uuden sivun luomista varten.

Kun lähetät lomakkeen, jossa on method = "post" ja action = "pages", se kutsuu store()menetelmää.

Ja niin edelleen.

Kyse on Laravel-ohjaimen luomisesta CRUD-operaatioita varten. Jaa ajatuksesi alla olevassa kommenttiosassa.

Aiheeseen liittyvät artikkelit

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja