Creare un controller
laravelbenLétrehozni a controller
, meg kell nyitnunk a parancssort vagy terminált, az általunk használt operációs rendszernek megfelelően, és be kell gépelnünk a következő parancsot a vezérlő létrehozásához Artisan CLI (Command Line Interface).
php artisan make:controller <controller-name> --plain
Cserélje ki <controller-name>
a te neveddel controller
. Ezzel létrejön a controller
. Az controller
létrehozott ben megtekinthető app/Http/Controllers
.
Látni fogja, hogy néhány alapvető kódolás már megtörtént, és hozzáadhatja saját egyéni kódolását. A controller
Created a web.php-ből a következő szintaxissal hívható meg.
Route::get(‘base URI’,’controller@method’);
1 : Futtassa a következő parancsot a létrehozáshoz MyController
php artisan make:controller MyController
2 – Sikeres végrehajtás után a következő kimenetet kapja.
3 – Megtaláljuk a ben létrehozott vezérlőt app/Http/Controller/MyController.php
néhány alapkóddal, amely már meg van írva, és szükség szerint módosíthatjuk.
Láttuk már a middleware
és használhatjuk a controller
. Az middleware
a vezérlő útvonalához vagy a vezérlő konstruktorán belül is hozzárendelhető. Használhatja a módszert middleware
hozzárendelni a middleware
al controller
. Az middleware
regisztrált is korlátozható bizonyos módszerek a controller
.
Route::get('profile', [
'middleware' => 'auth',
'uses' => 'UserController@showProfile'
]);
Itt hitelesítési köztes szoftvert rendelünk a UserControllerhez a profilútvonalban.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class MyController extends Controller {
public function __construct() {
$this->middleware('auth');
}
}
Itt hozzárendeljük a middleware
a hitelesítésről módszer segítségével middleware
a konstruktorban MyController .
Vegye figyelembe, hogy $this->middleware()
működik csak ha a konstruktorban hozzárendeli. Ha hívjuk $this->middleware()
egy adott vezérlőmódszertől nem fog hibát okozni, de a köztes szoftver valójában nem fog működni.
Ez a lehetőség érvényes, de Személyesen inkább az összes köztes szoftvert a routes
, mert világosabb, hogy hol kell keresni az összes middleware
.
1 – Adjuk hozzá a következő kódsorokat a fájlhoz routes/web.php és megtakarítjuk.
<?php
Route::get('/mycontroller/path',[
'middleware' => 'First',
'uses' => 'MyController@showPath'
]);
2 – Hozzuk létre a middleware
megnevezett FirstMiddleware
a következő kódsor futtatásával.
php artisan make:middleware FirstMiddleware
3 : adja hozzá a következő kódot a metódushoz fogantyú del FirstMiddleware
most jött létre app/Http/Middleware .
<?php
namespace App\Http\Middleware;
use Closure;
class FirstMiddleware {
public function handle($request, Closure $next) {
echo '<br>First Middleware';
return $next($request);
}
}
4 – Hozzuk létre a middleware
megnevezett SecondMiddleware a következő parancs futtatásával.
php artisan make:middleware SecondMiddleware
5 : adjuk hozzá a következő kódot a kezelési metódusához SecondMiddleware
most jött létre app/Http/Middleware .
<?php
namespace App\Http\Middleware;
use Closure;
class SecondMiddleware {
public function handle($request, Closure $next) {
echo '<br>Second Middleware';
return $next($request);
}
}
6 : hozzunk létre a controller
megnevezett MyController a következő sor futtatásával.
php artisan make:controller MyController
7 - Az url sikeres végrehajtása után a következő kimenetet kapja -
8 – Másolja be a következő kódot a fájlba app/Http/MyController.php
.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class MyController extends Controller {
public function __construct() {
$this->middleware('Second');
}
public function showPath(Request $request) {
$uri = $request->path();
echo '<br>URI: '.$uri;
$url = $request->url();
echo '<br>';
echo 'URL: '.$url;
$method = $request->method();
echo '<br>';
echo 'Method: '.$method;
}
}
9 – Most indítsuk el a php belső webszervert a következő parancs futtatásával, ha még nem tette meg.
php artisan serve
10 – Látogassa meg a következő URL-t.
http://localhost:8000/mycontroller/path
11 – A kimenet a következő képen látható módon jelenik meg.
Gyakorlatilag mindkét köztes szoftver érintett, de csak az egyik
Controller
di restful resource
Egy alkalmazás létrehozásakor gyakran tennie kell valamit CRUD (Create, Read, Update, Delete)
. Laravel megkönnyíti ezt a munkát. Csak hozzon létre a controller
és a Laravel automatikusan biztosítja a műveletekhez szükséges összes metódust CRUD
. A fájlban lévő összes metódushoz egyetlen elérési utat is rögzíthetünk route.php
.
1 : hozzon létre egy vezérlőt MyController
a következő parancs futtatásával.
php artisan make:controller MyController
2 : adja hozzá a következő kódot app/Http/Controllers/MyController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class MyController extends Controller {
public function index() {
echo 'index';
}
public function create() {
echo 'create';
}
public function store(Request $request) {
echo 'store';
}
public function show($id) {
echo 'show';
}
public function edit($id) {
echo 'edit';
}
public function update(Request $request, $id) {
echo 'update';
}
public function destroy($id) {
echo 'destroy';
}
}
3 – Adjuk hozzá a következő kódsort a fájlhoz routes/web.php
.
Route::resource('my','MyController');
4 – Most regisztráljuk a MyController összes metódusát egy erőforrással rendelkező vezérlő regisztrálásával. Az alábbiakban az erőforrás-vezérlő által kezelt műveletek táblázata látható.
Ige | Útvonal | Akció | Útvonal neve |
---|---|---|---|
GET | / az én | index | indexem |
GET | /my/create | teremt | az én.teremteni |
POST | / az én | tárolni | boltom |
GET | /Nahát} | előadás | az én.műsorom |
GET | /my/{my}/edit | szerkesztés | my.edit |
PUT/PATCH | /Nahát} | frissítés | my.update |
DELETE | /Nahát} | elpusztítani | az én. elpusztítani |
5 – Próbálkozzon az alábbi táblázatban látható URL-ek futtatásával.
URL | Leírás | Kijárat |
---|---|---|
http://localhost:8000/my | Hajtsa végre a MyController.php index metódusát | index |
http://localhost:8000/my/create | Hajtsa végre a MyController.php létrehozási metódusát | szerkesztése által |
http://localhost:8000/my/1 | Hajtsa végre a MyController.php show metódusát | előadás |
http://localhost:8000/my/1/edit | Hajtsa végre a MyController.php szerkesztési módszerét | szerkesztés |
Ercole Palmeri
A Microsoft Excel az adatelemzés referenciaeszköze, mivel számos funkciót kínál az adatkészletek rendszerezéséhez,…
A Walliance, a SIM és a platform 2017 óta Európa egyik vezető ingatlan-közösségi finanszírozása, bejelentette, hogy befejeződött…
A Filament egy "gyorsított" Laravel fejlesztői keretrendszer, amely több full-stack összetevőt biztosít. Úgy tervezték, hogy egyszerűsítse a folyamatot…
„Vissza kell térnem, hogy befejezzem az evolúciómat: kivetítem magam a számítógép belsejébe, és tiszta energiává válok. Miután letelepedett…
A Google DeepMind bemutatja mesterséges intelligencia modelljének továbbfejlesztett változatát. Az új, továbbfejlesztett modell nemcsak…
Az elegáns szintaxisáról és erőteljes funkcióiról híres Laravel szilárd alapot biztosít a moduláris architektúrához. Ott…
A Cisco és a Splunk segít ügyfeleinek, hogy felgyorsítsák útjukat a jövő Security Operations Center (SOC) felé…
A Ransomware uralta a híreket az elmúlt két évben. A legtöbb ember jól tudja, hogy a támadások…