Creare un controller
yn laravelI greu a controller
, rhaid inni agor y gorchymyn yn brydlon neu derfynell, yn ôl y system weithredu yr ydym yn ei ddefnyddio, a theipiwch y gorchymyn canlynol i greu'r rheolydd gan ddefnyddio Artisan CLI (Command Line Interface).
php artisan make:controller <controller-name> --plain
Amnewid <controller-name>
gyda'ch enw controller
. Bydd hyn yn creu a controller
. Yr controller
creu gellir ei weld yn app/Http/Controllers
.
Fe welwch fod rhywfaint o godio sylfaenol eisoes wedi'i wneud i chi a gallwch ychwanegu eich codio personol eich hun. Mae'r controller
creu gellir ei alw o web.php gyda'r gystrawen ganlynol.
Route::get(‘base URI’,’controller@method’);
1 : Rhedeg y gorchymyn canlynol i greu MyController
php artisan make:controller MyController
2 - Ar ôl ei weithredu'n llwyddiannus, fe gewch yr allbwn canlynol.
3 - Byddwn yn dod o hyd i'r rheolydd a grëwyd yn app/Http/Controller/MyController.php
gyda rhywfaint o god sylfaenol eisoes wedi'i ysgrifennu a gallwn wneud newidiadau yn ôl yr angen.
Rydym eisoes wedi gweld y middleware
a gallwn hefyd ei ddefnyddio gyda'r controller
. Yr middleware
gellir ei neilltuo hefyd i'r llwybr rheolydd neu o fewn y rheolydd constructor. Gallwch ddefnyddio'r dull middleware
i aseinio y middleware
al controller
. Yr middleware
cofrestredig gall hefyd gael ei gyfyngu i ddulliau penodol o'r controller
.
Route::get('profile', [
'middleware' => 'auth',
'uses' => 'UserController@showProfile'
]);
Yma rydym yn aseinio canolwedd dilysu i UserController yn llwybr proffil.
<?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');
}
}
Dyma ni yn aseinio y middleware
o ddilysu gan ddefnyddio'r dull middleware
yn yr adeiladydd FyRheolydd .
Sylwch ar hynny $this->middleware()
Mae'n gweithio yn unig os ydych chi'n ei aseinio yn yr adeiladwr. Os byddwn yn galw $this->middleware()
o ddull rheolydd penodol, ni fydd yn taflu unrhyw wallau ond ni fydd y nwyddau canol yn gweithio mewn gwirionedd.
Mae'r opsiwn hwn yn ddilys, ond yn bersonol Mae'n well gennyf roi'r holl nwyddau canol yn y routes
, oherwydd mae'n gliriach ble i chwilio am yr holl middleware
.
1 - Gadewch i ni ychwanegu'r llinellau cod canlynol at y ffeil llwybrau/gwe.php ac arbedwn.
<?php
Route::get('/mycontroller/path',[
'middleware' => 'First',
'uses' => 'MyController@showPath'
]);
2 – Gadewch i ni greu a middleware
o'r enw FirstMiddleware
trwy redeg y llinell cod ganlynol.
php artisan make:middleware FirstMiddleware
3 : ychwanegu'r cod canlynol yn y dull trin del FirstMiddleware
newydd greu yn ap/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 – Gadewch i ni greu a middleware
o'r enw AilMiddleware trwy redeg y gorchymyn canlynol.
php artisan make:middleware SecondMiddleware
5 : gadewch i ni ychwanegu y cod canlynol yn y dull trin y SecondMiddleware
newydd greu yn ap/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 : gadewch i ni greu a controller
o'r enw FyRheolydd trwy redeg y llinell ganlynol.
php artisan make:controller MyController
7 – Ar ôl i'r url weithredu'n llwyddiannus, fe gewch yr allbwn canlynol -
8 - Copïwch y cod canlynol i'r ffeil 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 - Nawr, gadewch i ni ddechrau'r gweinydd gwe mewnol php trwy redeg y gorchymyn canlynol, os nad ydych chi wedi gwneud hynny eisoes.
php artisan serve
10 - Ewch i'r URL canlynol.
http://localhost:8000/mycontroller/path
11 - Bydd yr allbwn yn ymddangos fel y dangosir yn y ddelwedd ganlynol.
Mae bron y ddau nwyddau canol yn cymryd rhan, ond dim ond un
Controller
di restful resource
Yn aml wrth greu cais mae angen i chi wneud rhywbeth CRUD (Create, Read, Update, Delete)
. Mae Laravel yn gwneud y swydd hon yn hawdd. Dim ond creu a controller
a bydd Laravel yn darparu'r holl ddulliau ar gyfer y gweithrediadau yn awtomatig CRUD
. Gallwn hefyd gofnodi un llwybr i bob dull yn y ffeil route.php
.
1 : creu rheolydd o'r enw MyController
trwy redeg y gorchymyn canlynol.
php artisan make:controller MyController
2 : ychwanegwch y cod canlynol i mewn 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 - Gadewch i ni ychwanegu'r llinell cod ganlynol yn y ffeil routes/web.php
.
Route::resource('my','MyController');
4 – Rydym nawr yn cofrestru pob dull o MyController trwy gofrestru rheolydd gydag adnoddau. Isod mae'r tabl o gamau gweithredu a reolir gan y rheolwr adnoddau.
Verb | Llwybr | Gweithred | Enw'r Llwybr |
---|---|---|---|
GET | / fy | mynegai | fy |
GET | /fy/creu | creu | fy.create |
SWYDD | / fy | storio | fy.storfa |
GET | /fy/{fy} | Dangos | fy.sioe |
GET | /fy/{fy}/golygu | golygu | fy.golygu |
RHOI/PATCH | /fy/{fy} | diweddariad | fy.diweddariad |
DELETE | /fy/{fy} | dinistrio | difa |
5 – Ceisiwch redeg yr URLs a ddangosir yn y tabl isod.
URL | Disgrifiad | Allanfa |
---|---|---|
http://localhost:8000/my | Gweithredwch y dull mynegai MyController.php | mynegai |
http://localhost:8000/my/create | Gweithredwch y dull creu o MyController.php | creare |
http://localhost:8000/my/1 | Gweithredwch y dull sioe o MyController.php | Dangos |
http://localhost:8000/my/1/edit | Gweithredwch y dull golygu o MyController.php | golygu |
Ercole Palmeri
Mae unrhyw weithrediad busnes yn cynhyrchu llawer o ddata, hyd yn oed mewn gwahanol ffurfiau. Rhowch y data hwn â llaw o ddalen Excel i…
Cynyddodd cyfaddawd e-byst cwmni fwy na dwbl yn ystod tri mis cyntaf 2024 o'i gymharu â chwarter olaf…
Mae egwyddor gwahanu rhyngwyneb yn un o'r pum egwyddor SOLID o ddylunio gwrthrych-ganolog. Dylai fod gan ddosbarth…
Microsoft Excel yw'r offeryn cyfeirio ar gyfer dadansoddi data, oherwydd mae'n cynnig llawer o nodweddion ar gyfer trefnu setiau data,…
Mae Walliance, SIM a llwyfan ymhlith yr arweinwyr yn Ewrop ym maes Cyllid Torfol Eiddo Tiriog ers 2017, yn cyhoeddi ei fod wedi'i gwblhau…
Mae ffilament yn fframwaith datblygu Laravel "cyflym", sy'n darparu sawl cydran pentwr llawn. Fe'i cynlluniwyd i symleiddio'r broses o…
«Rhaid i mi ddychwelyd i gwblhau fy esblygiad: byddaf yn taflu fy hun y tu mewn i'r cyfrifiadur ac yn dod yn egni pur. Wedi setlo yn…
Mae Google DeepMind yn cyflwyno fersiwn well o'i fodel deallusrwydd artiffisial. Mae'r model gwell newydd yn darparu nid yn unig…