Iyo nzira inzira yekugadzira yekukumbira URL yechishandiso chako. Aya ma URL haafanire kubatanidzwa neakananga mafaera pawebhusaiti uye anoverengwa nevanhu uye ane hushamwari hweSEO.
MuLaravel, nzira dzinogadzirwa mukati meiyo folda routes
. Izvo zvakagadzirwa mufaira web.php
kumawebhusaiti, uye mukati api.php
zvemaAPI.
Izvi route
anogoverwa kuboka middleware
network, kuratidza chimiro chechikamu uye chengetedzo CSRF
. Nzira dziri mukati route/api.php
ivo havana nyika uye vanopihwa kune API middleware boka.
The pre-installationdefiLaravel nita inouya nenzira mbiri, imwe yewebhu uye imwe yeAPI. Izvi ndizvo zvakaita nzira yewebhu mukati web.php
:
Route::get('/', function () {
return view('welcome');
});
Nzira dzese dzeLaravel dziri definiti mune mafaera enzira ari mukati medhairekitori routes
. Iyo nzira yekushandisa application, defiyaiswa mufaira App\Providers\RouteServiceProvider
, inotarisira kurongedza mafaera aya otomatiki. The file route/web.php
defiinobvisa nzira dzewebhu yako interface.
Zvinogoneka definish nzira yeiyi controller chiito seinotevera:
Route::get(‘user/{id}’, ‘UserController@show’);
Route::resource
: nzira Route::resource
inogadzira nzira dzese dzinodiwa pakunyorera uye inotungamirwa kuburikidza nekirasi yekutonga.
Kana chikumbiro chichienderana nenzira yakatarwa yeURI, nzira yacho inokumbirwa show
defiyapera mu controller App\Http\ControllersUserController
, kupfuudza nzira paramita kune nzira.
Kune zviwanikwa, iwe unofanirwa kuita zvinhu zviviri pane application Laravel. Kutanga, iwe unofanirwa kugadzira nzira yekushandisa pane Laravel iyo inopa kuisa, kugadzirisa, kuona uye kudzima nzira. Chechipiri, gadzira resource controller inopa nzira yekuisa, kugadzirisa, kuona, uye kudzima.
The pre-installationdefiLaravel nita inouya nenzira mbiri: imwe yewebhu uye imwe yeAPI. Hezvino zvakaita nzira yewebhu pawebhu.php:
Route::get(‘/’, function () {
return view(‘welcome’);
});
Laravel Middleware inoshanda sebhiriji pakati pekukumbira uye maitiro. Inogona kunge iri imwe yerudzi rwesefa chikamu.
Laravel kushanda ne middleware iyo ine basa rekusimbisa kana chikumbiro chemutengi chakasimbiswa kana kwete. Kana mutengi akasimbiswa, ipapo nzira inotungamira kune peji reimba kana peji rekupinda.
route
Kodhi yapfuura defiinobvisa nzira inoenda kupeji yekumba. Chero nzira iyi inogamuchira chikumbiro get
pa /
, achadzorera view
welcome
.
Nzira dzese dzeLaravel dziri definditi mune yenyu routing
, izvo zviri mukati medhairekitori dei routes
. Naizvozvo, l'AppProvidersRouteServiceProvider
yezvishandiso inomisa zvinyorwa izvi. The file route/web.php
ine nzira dzinochengetedzwa pawebhu interface yako.
Chimiro chegwara chiri nyore kwazvo. Vhura faira rakakodzera (`web.php
` o `api.php
` ) uye tanga mutsara wekodhi ne `Route:: `
, inoteverwa nechikumbiro chaunoda kupa kune chaiyo nzira uye wobva wataura basa richaitwa zvichitevera chikumbiro.
Laravel inopa nzira dzinotevera nzira:
get
post
put
delete
patch
options
Nzira dzacho defiinoiswa muLaravel mukati meRoute kirasi ine HTTP, nzira yekupindura uye yekuvhara, kana controller.
Ngatione kuti ungagadzira sei nzira dzako muLaravel.
Zvino ini ndichagadzira nzira yekutanga iyo inodhinda iyo nguva tafura ye2.
Route::get('/table', function () {
for($i =1; $i <= 10 ; $i++){
echo "$i * 2 = ". $i*2 ."<br>";
}
});
Mune kodhi iri pamusoro, ndakagadzira nzira yekukumbira yeGET yeiyo URL /table
, iyo inodhinda tafura yenguva ye2 pachiratidziri.
Zvino ngationei kodhi imwechete, tichiisa nhamba yatinoda tafura yekuwedzera:
Route::get('/table/{number}', function ($number) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Mukodhi iyo 'number
' pakati pemabhureki anomiririra parameter, kureva nhamba ichaverengerwa tafura yekuwanza. Pese panotsanangurwa URL yerudzi /table/n
, ipapo tafura yenhamba ichadhindwa n
.
Kune zvakare nzira yekusanganisa ese ari maviri maficha munzira imwe. Laravel inopa inosarudzika parameters inoita kuti uwedzere sarudzo uchishandisa chiratidzo chemubvunzo '?' mushure mesarudzo paramende uye pre valuedefinite. Ngationei muenzaniso:
Route::get('/table/{number?}', function ($number = 2) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Mune kodhi iri pamusoro takagadzira yedu nzira paramende, tichiita iyo nhamba sarudzo, saka kana mushandisi nzira `/table
` zvino ichagadzira tafura ye2 nekukasiradefinite uye kana mushandisi aenda ku `/table/{number}
Zvadaro nhamba yetafura 'number'
ichagadzirwa.
Mumuenzaniso wapfuura takagadzira nzira yekugadzira tafura yekuwanza, asi tingava sei nechokwadi chekuti parameter yenzira yacho inhamba, kudzivirira kukanganisa pakugadzira tafura yekuwedzera?
MuLaravel, unogona defibvisa chinomanikidza panzira paramende uchishandisa iyo ` nzirawhere
` pamuenzaniso wenzira. The `where
` inotora zita reparamende uye chirevo chenguva dzose cheiyo parameter.
Zvino ngationei muenzaniso wekumanikidza kune yedu ` parameter{numero}
` kuita chokwadi chekuti nhamba chete inopfuudzwa kubasa.
Route:: get ( '/table/{numero?}' , funzione ( $numero = 2 ) {
for( $i = 1 ; $i < = 10 ; $i + + ) {
echo "$i * $numero = " . $i * $numero . "<br>" ;
}
} )->where( 'numero' , '[0-9]+' ) ;
Mune kodhi iri pamusoro, takashandisa chirevo chenguva dzose kune nhamba yenzira. Zvino, kana mushandisi akaedza nzira kuenda /tafura/kwete zvicharatidzwa imwe NotFoundHttpException kunze.
MuLaravel, unogona definish a Controller nzira yenzira. A controller nzira inoita zviito zvese definite pese apo mushandisi anopinda munzira.
Nekodhi inotevera isu tiri kugovera iyo controller nzira 'functionname'
kune nzira:
Route:: get ( '/home' , 'YourController@functionname' ) ;
Kodhi inotanga na `Route::`
uye naizvozvo defiinodzima nzira yekukumbira nzira. Zvadaro, defiPedzisa nzira yako uye controller pamwe nenzira nekuwedzera iyo @ chiratidzo pamberi pezita renzira.
MuLaravel, unogona defitora zita renzira yako. Zita iri rinowanzobatsira zvikuru. Semuenzaniso, kana iwe uchida kutungamira mushandisi kubva kune imwe nzvimbo kuenda kune imwe, haufanirwe kudaro defibvisa iyo yakazara redirect URL. Unogona kungopa zita rake. Unogona defibvisa zita renzira uchishandisa ` nziraname
` mumuenzaniso wenzira.
Route::get('/table/{number?}', function ($number = 2) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
})->where('number', '[0-9]+')->name(‘table’);
Zvino, ndaigona kuvandudza url yeiyi nzira, kuburikidza neinotevera kodhi:
$url = route('table');
Saizvozvo, pakutungamira kune iyi URL, iyo syntax chaiyo ingave:
return redirect()->route('table');
Route Groups
I Route Groups
, chaizvo mapoka mapoka, chinhu chakakosha muLaravel, chinokutendera kuti uunganidze nzira. Mapoka enzira anobatsira kana iwe uchida kushandisa hunhu kune ese akaiswa mapoka nzira. Kana iwe ukashandisa mapoka mapoka, haufanirwe kushandisa hunhu wega kune yega nzira; izvi zvinodzivisa kudzokorora. Zvinokutendera kuti ugovane hunhu hwakadai middleware
o namespaces
, pasina defipedzisa hunhu uhu panzira yega yega. Aya maitiro akagovaniswa anogona kupfuudzwa mune array fomati seyekutanga parameter kune nzira Route::group
.
Syntax yeRoute Group
Route::group([], callback);
njiva []: iri rondedzero yakapfuudzwa kunzira yeboka seyekutanga parameter.
Muenzaniso we Route Group
nel web.php
Route::group([], function()
{
Route::get('/first' , function()
{
echo "first way route" ;
});
Route::get('/second' , function()
{
echo "second way route" ;
});
Route::get('/third' , function()
{
echo "third way route" ;
});
});
Mukodhi, defingatiwane nzira boka (), iyo ine miviri miviri, i.e array
e closure
. Mukati me closure
, tinogona defikupedza vangani route
tinoda. Mune kodhi iri pamusoro, tine defiakapedza matatu route
.
Kana kuburikidza nebrowser tinowana iyo URL localhost/myproject/first
ipapo wekutanga anopindira route
kutaipa mubrowser first way route
.
Ne URL localhost/myproject/second
kwozouya wechipiri route
kutaipa mubrowser second way route
.
Ndichiri neURL localhost/myproject/third
kwozouya wechitatu route
kutaipa mubrowser third way route
.
Route Groups
Zvivakamberi zve route
iwo anoshandiswa kana isu tichida kupa URL chimiro chakajairika kune akawanda route
.
Tinogona kutsanangura prefix yenzira dzese definites mukati meboka uchishandisa prefix array sarudzo mukati Route Groups
.
Muenzaniso we web.php
Route::group(['prefix' => 'movie'], function()
{
Route::get('/godfather',function()
{
echo "Godfather casting";
});
Route::get('/pulpfiction',function()
{
echo "Pulp Fiction casting";
});
Route::get('/forrestgump',function()
{
echo "Forrest Gump casting";
});
});
Iyo kodhi ine nzira nhatu dzinogona kuwanikwa kubva kune anotevera maURL:
/movie/godfather ---> Godfather casting
/movie/pulpfiction ---> Pulp Fiction casting
/movie/forrestgump ---> Forrest Gump casting
Isu tinogona zvakare kugovera middleware kunzira dzese mukati meboka. Iyo yepakati inofanira kuva defiapedza asati agadzira boka. Kuti uone kuti ungaita sei izvi, verenga chinyorwa chedu Laravel middleware kuti inoshanda sei.
muenzaniso:
Route::middleware(['age'])->group( function()
{
Route::get('/godfather',function()
{
echo "Godfather casting";
});
Route::get('/pulpfiction',function()
{
echo "Pulp Fiction casting";
});
Route::get('/forrestgump',function()
{
echo "Forrest Gump casting";
});
});
Maitiro name
rinoshandiswa kutaridza zita rekutanga re route
netambo yakataurwa. Munzira name
, tinoda kutsanangura tambo ine mutsara unotevera mu prefix.
muenzaniso web.php
Route::name('movie.')->group(function()
{
Route::get('users', function()
{
return "movie.films";
})->name('films');
});
Ercole Palmeri
Iyo UK CMA yakapa yambiro nezvemaitiro eBig Tech mumusika wehungwaru hwekugadzira. Ikoko…
Chirevo che "Case Green", chakagadzirwa neEuropean Union kuti chiwedzere kushanda nesimba kwezvivakwa, chapedza hurongwa hwayo hwemutemo ne…
Casaleggio Associati mushumo wepagore weEcommerce muItaly wakapihwa. Chirevo chine musoro unoti "AI-Commerce: miganhu yeEcommerce neArtificial Intelligence".…
Mhedzisiro yenguva dzose yekuvandudza tekinoroji uye kuzvipira kune zvakatipoteredza uye kugara zvakanaka kwevanhu. Bandalux inopa Airpure®, tende…