Ọna naa jẹ ọna lati ṣẹda URL ibeere fun ohun elo rẹ. Awọn URL wọnyi ko ni lati ni nkan ṣe pẹlu awọn faili kan pato lori oju opo wẹẹbu kan ati pe o ṣee ka ati SEO-iṣapeye.
Ni Laravel, awọn ọna ti ṣẹda laarin folda awọn faili routes
. Wọn ṣẹda ninu faili naa web.php
fun awọn aaye ayelujara, ati laarin api.php
fun APIs.
Iwọnyi route
ti wa ni sọtọ si awọn ẹgbẹ middleware
nẹtiwọki, afihan igba ipinle ati aabo CSRF
. Awọn ọna inu route/api.php
wọn jẹ alaini orilẹ-ede ati pe a yàn wọn si ẹgbẹ agbedemeji API.
Awọn ṣaaju-fifi soridefiLaravel nita wa pẹlu awọn ọna meji, ọkan fun oju opo wẹẹbu ati ekeji fun API. Eyi ni ohun ti oju-ọna si oju opo wẹẹbu ṣe dabi web.php
:
Route::get('/', function () {
return view('welcome');
});
Gbogbo awọn ọna Laravel jẹ definited ni awọn faili ọna ti a rii laarin itọsọna naa routes
. Ohun elo iṣakoso ipa ọna, definited ninu faili App\Providers\RouteServiceProvider
, n ṣe abojuto tito lẹsẹsẹ awọn faili wọnyi laifọwọyi. Faili naa route/web.php
definishes awọn ipa-ọna fun wiwo wẹẹbu rẹ.
O ṣee ṣe definish ọna kan fun igbese oludari yii bi atẹle:
Route::get(‘user/{id}’, ‘UserController@show’);
Route::resource
: ọna Route::resource
ṣe agbejade gbogbo awọn ọna ipilẹ ti o nilo fun ohun elo kan ati pe o ṣakoso nipasẹ kilasi oludari.
Nigbati ibeere ba baamu URI ti a ti sọ tẹlẹ, ọna naa ni a pe show
definited ni oludari App\Http\ControllersUserController
, Gbigbe awọn paramita ipa-ọna si ọna naa.
Fun awọn orisun, o nilo lati ṣe awọn nkan meji lori ohun elo naa Laravel. Ni akọkọ, o nilo lati ṣẹda ọna orisun lori Laravel ti o pese ifibọ, imudojuiwọn, wo ati paarẹ awọn ọna. Ẹlẹẹkeji, ṣẹda oluṣakoso ohun elo ti o pese ọna fun fifi sii, imudojuiwọn, wiwo, ati piparẹ.
Awọn ṣaaju-fifi soridefiLaravel nita wa pẹlu awọn ọna meji: ọkan fun oju opo wẹẹbu ati ekeji fun API. Eyi ni ohun ti ipa ọna wẹẹbu dabi ni web.php:
Route::get(‘/’, function () {
return view(‘welcome’);
});
Laravel Middleware ìgbésẹ bi a Afara laarin awọn ìbéèrè ati awọn lenu. O le jẹ iru paati àlẹmọ kan.
Laravel ṣiṣẹ pẹlu a agbedemeji eyi ti o ni iṣẹ-ṣiṣe ti ifẹsẹmulẹ boya ohun elo onibara jẹ iṣeduro tabi rara. Ni ọran ti alabara ba jẹrisi, lẹhinna itọsọna afisona si oju-iwe ile tabi oju-iwe iwọle kan.
route
Awọn ti tẹlẹ koodu defiọna kan si oju-iwe ile yoo han. Nigbakugba ti ọna yii ba gba ibeere kan get
fun /
, yoo pada awọn view
welcome
.
Gbogbo awọn ọna Laravel jẹ definited ninu awọn faili rẹ routing
, eyi ti o wa ni inu itọsọna dei routes
. Nitoribẹẹ, l'AppProvidersRouteServiceProvider
ti awọn ohun elo laini soke awọn wọnyi igbasilẹ. Faili naa route/web.php
ni awọn ipa-ọna ti a ṣakoso fun wiwo wẹẹbu rẹ.
Ilana ti awọn ipa ọna jẹ irorun. Ṣii faili ti o yẹ (`web.php
` o `api.php
` ) ki o si bẹrẹ ila ti koodu pẹlu `Route:: `
, atẹle nipa ibeere ti o fẹ lati fi si ọna kan pato ati lẹhinna pato iṣẹ ti yoo ṣe ni atẹle ibeere naa.
Laravel nfunni ni awọn ọna wọnyi:
get
post
put
delete
patch
options
Awọn ipa-ọna jẹ definited ni Laravel inu kilasi Ipa ọna pẹlu HTTP, ipa ọna lati dahun si ati pipade, tabi oludari.
Jẹ ki a wo bii o ṣe le ṣẹda awọn ipa-ọna tirẹ ni Laravel.
Bayi Emi yoo ṣẹda ọna ipilẹ ti yoo tẹjade tabili igba 2.
Route::get('/table', function () {
for($i =1; $i <= 10 ; $i++){
echo "$i * 2 = ". $i*2 ."<br>";
}
});
Ninu koodu ti o wa loke, Mo ṣẹda ọna ibeere GET fun URL naa /table
, eyi ti yoo tẹ sita 2 igba tabili loju iboju.
Jẹ ki a wo koodu kanna, parameterizing nọmba fun eyiti a fẹ tabili isodipupo:
Route::get('/table/{number}', function ($number) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Ninu koodu naa 'number
'Laarin awọn biraketi iṣupọ duro fun paramita, ie nọmba fun eyiti tabili isodipupo yoo ṣe iṣiro. Nigbakugba ti URL bi eleyi ti wa ni pato /table/n
, lẹhinna tabili nọmba yoo wa ni titẹ n
.
Ọna tun wa lati darapo awọn ẹya mejeeji sinu ọna kan. Laravel nfunni ẹya ara ẹrọ awọn paramita aṣayan ti o fun ọ laaye lati ṣafikun awọn paramita iyan nipa lilo ami ibeere '?' lẹhin iyan paramita ati awọn ami iyedefinite. Jẹ ki a wo apẹẹrẹ:
Route::get('/table/{number?}', function ($number = 2) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Ninu koodu ti o wa loke a ṣẹda paramita ipa-ọna wa, ṣiṣe nọmba naa ni iyan, nitorinaa ti olumulo ba n lọ `/table
` lẹhinna yoo ṣe agbekalẹ tabili ti 2 nipasẹ eto iṣaajudefinita ati ti olumulo ba nlo si `/table/{number}
O jẹ Nitorina tabili nọmba 'number'
yoo ṣe iṣelọpọ.
Ninu apẹẹrẹ ti tẹlẹ a ṣẹda ọna fun ṣiṣẹda tabili isodipupo, ṣugbọn bawo ni a ṣe le rii daju pe paramita ọna jẹ nọmba gangan, lati yago fun awọn aṣiṣe lakoko iran ti tabili isodipupo?
Ni Laravel, o le definish ihamọ kan lori paramita ipa-ọna nipa lilo ọna `where
` lori apẹẹrẹ ipa-ọna. Awọn `where
` gba orukọ paramita ati ikosile deede fun paramita yẹn.
Bayi jẹ ki a wo apẹẹrẹ ti ihamọ fun paramita wa `{numero}
`lati rii daju pe nọmba kan nikan ni o kọja si iṣẹ naa.
Route:: get ( '/table/{numero?}' , funzione ( $numero = 2 ) {
for( $i = 1 ; $i < = 10 ; $i + + ) {
echo "$i * $numero = " . $i * $numero . "<br>" ;
}
} )->where( 'numero' , '[0-9]+' ) ;
Ninu koodu ti o wa loke, a ti lo ikosile deede fun nọmba ọna. Bayi, ti olumulo kan ba gbiyanju lati ipa ọna si /tabili/ko si , yoo han Iyatọ ti NotFoundHttpException.
Ni Laravel, o le definish a Adarí ọna fun a ipa ọna. Ọna oludari ṣe gbogbo awọn iṣe definite ni gbogbo igba ti olumulo kan wọle si ipa-ọna naa.
Pẹlu koodu atẹle a n yan ọna iṣakoso 'functionname'
si ọna:
Route:: get ( '/home' , 'YourController@functionname' ) ;
Awọn koodu bẹrẹ pẹlu `Route::`
ati nitori naa defiọna ìbéèrè fun ipa ọna dopin. Lẹhinna, definish ọna rẹ ati oludari pẹlu ọna naa nipa fifi aami @ kun ṣaaju orukọ ọna naa.
Ni Laravel, o le defiwá pẹlu orukọ kan fun ọna rẹ. Orukọ yii nigbagbogbo wulo pupọ. Fun apẹẹrẹ, ti o ba fẹ ṣe atunṣe olumulo kan lati ipo kan si omiiran, iwọ ko nilo lati defipari URL àtúnjúwe ni kikun. O le jiroro ni fun orukọ rẹ. O le definite orukọ ipa ọna lilo ` ọnaname
`Ninu ọna apẹẹrẹ.
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’);
Ni bayi, Mo le ṣe atunto URL fun ọna yii, nipasẹ koodu atẹle:
$url = route('table');
Bakanna, fun atunṣe si URL yii, sintasi ti o pe yoo jẹ:
return redirect()->route('table');
Route Groups
I Route Groups
, Awọn ẹgbẹ ọna gangan, jẹ ẹya pataki ni Laravel, eyiti o fun ọ laaye lati ṣe akojọpọ awọn ọna. Awọn ẹgbẹ ipa-ọna jẹ iwulo nigbati o fẹ lati lo awọn abuda si gbogbo awọn ọna akojọpọ. Ti o ba lo awọn ẹgbẹ ipa ọna, iwọ ko ni lati lo awọn abuda ni ẹyọkan si ipa-ọna kọọkan; eyi yago fun išẹpo. O faye gba o lati pin awọn eroja bi middleware
o namespaces
, laisi definise wọnyi eroja lori gbogbo nikan ona. Awọn abuda pinpin wọnyi le ṣee kọja ni ọna kika bi paramita akọkọ si ọna naa Route::group
.
Sintasi ti a Route Group
Route::group([], callback);
Eye Adaba []: jẹ orun ti o kọja si ọna ẹgbẹ bi paramita akọkọ.
Apeere ti Route Group
Nel ayelujara.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" ;
});
});
Ninu koodu, defiJẹ ká bẹrẹ awọn ọna ẹgbẹ(), eyi ti o ni awọn paramita meji, i.e array
e closure
. Inu awọn closure
, a le defimọ bi ọpọlọpọ awọn route
a fẹ. Ni awọn koodu loke, a ni defipari mẹta route
.
Ti a ba wọle si URL nipasẹ ẹrọ aṣawakiri localhost/myproject/first
lẹhinna ti akọkọ da si route
kikọ ninu awọn kiri ayelujara first way route
.
Pẹlu URL localhost/myproject/second
lẹhinna ekeji dasi route
kikọ ninu awọn kiri ayelujara second way route
.
Lakoko pẹlu URL naa localhost/myproject/third
lẹhinna ẹgbẹ kẹta gbaja route
kikọ ninu awọn kiri ayelujara third way route
.
Route Groups
Awọn ìpele ti route
wọn lo nigba ti a fẹ lati pese ọna URL ti o wọpọ si ọpọlọpọ route
.
A le pato awọn ìpele fun gbogbo awọn ipa ọna definited laarin awọn ẹgbẹ lilo awọn ìpele orun aṣayan ni Route Groups
.
Apeere ti 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";
});
});
Koodu naa ni awọn ọna mẹta ti o le wọle lati awọn URL wọnyi:
/movie/godfather ---> Godfather casting
/movie/pulpfiction ---> Pulp Fiction casting
/movie/forrestgump ---> Forrest Gump casting
A tun le fi middleware si gbogbo awọn ipa-ọna laarin ẹgbẹ kan. Awọn middleware gbọdọ jẹ defipari ṣaaju ṣiṣẹda ẹgbẹ. Lati wo bi o ṣe le ṣe, ka nkan wa Laravel middleware bi o ti ṣiṣẹ.
apere:
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";
});
});
Ọna naa name
ti wa ni lo lati ìpele kọọkan orukọ ti route
pẹlu pàtó kan okun. Ni ọna name
, a nilo lati pato awọn okun pẹlu kan trailing kikọ ninu awọn ìpele.
apẹẹrẹ web.php
Route::name('movie.')->group(function()
{
Route::get('users', function()
{
return "movie.films";
})->name('films');
});
Ercole Palmeri
Ẹka ọgagun jẹ agbara eto-aje agbaye ni otitọ, eyiti o ti lọ kiri si ọja 150 bilionu kan…
Ni ọjọ Aarọ to kọja, Awọn akoko Iṣowo kede adehun kan pẹlu OpenAI. FT ṣe iwe-aṣẹ iwe-akọọlẹ agbaye rẹ…
Awọn miliọnu eniyan sanwo fun awọn iṣẹ ṣiṣanwọle, san awọn idiyele ṣiṣe alabapin oṣooṣu. O jẹ ero ti o wọpọ pe o…
Coveware nipasẹ Veeam yoo tẹsiwaju lati pese awọn iṣẹ esi iṣẹlẹ ikọlu cyber. Coveware yoo funni ni awọn oniwadi ati awọn agbara atunṣe…