Path minangka cara kanggo nggawe URL panjalukan kanggo aplikasi sampeyan. URL kasebut ora perlu digandhengake karo file tartamtu ing situs web lan bisa diwaca manungsa lan ramah SEO.
Ing Laravel, path digawe ing folder le routes
. Padha digawe ing file web.php
kanggo situs web, lan ing api.php
kanggo API.
Iki route
ditugasake ing grup middleware
jaringan, nyorot status sesi lan keamanan CSRF
. Rute ing route/api.php
lagi stateless lan diutus kanggo grup middleware API.
Pra-instalasidefiLaravel nita dilengkapi rong jalur, siji kanggo web lan siji kanggo API. Iki minangka path kanggo web ing katon web.php
:
Route::get('/', function () {
return view('welcome');
});
Kabeh jalur Laravel definiti ing file path sing ana ing direktori routes
. Aplikasi manajemen rute, defidilebokake ing file App\Providers\RouteServiceProvider
, ngurus file kasebut kanthi otomatis. File kasebut route/web.php
definishes path kanggo antarmuka web sampeyan.
Iku bisa definish path kanggo tumindak controller iki minangka nderek:
Route::get(‘user/{id}’, ‘UserController@show’);
Route::resource
: metode Route::resource
mrodhuksi kabeh path dhasar dibutuhake kanggo aplikasi lan ngatur liwat kelas controller.
Nalika panjalukan cocog karo URI rute sing ditemtokake, metode kasebut dijaluk show
defirampung ing controller App\Http\ControllersUserController
, ngliwati paramèter rute menyang cara.
Kanggo sumber daya, sampeyan kudu nindakake rong perkara ing aplikasi kasebut Laravel. Pisanan, sampeyan kudu nggawe path sumber daya ing Laravel sing nyedhiyakake sisipan, nganyari, ndeleng lan mbusak path. Kapindho, gawe pengontrol sumber daya sing nyedhiyakake cara kanggo nglebokake, nganyari, ndeleng, lan mbusak.
Pra-instalasidefiLaravel nita dilengkapi rong jalur: siji kanggo web lan siji kanggo API. Mangkene carane rute menyang web ing web.php:
Route::get(‘/’, function () {
return view(‘welcome’);
});
Laravel Middleware tumindak minangka jembatan antarane request lan reaksi. Bisa dadi sawetara jinis komponèn Filter.
Laravel nggarap a piranti tengah sing nduweni tugas kanggo konfirmasi apa aplikasi klien wis diverifikasi utawa ora. Yen klien wis dikonfirmasi, banjur nuntun pangalihan menyang kaca ngarep utawa kaca login.
route
Kode sadurunge definishes path menyang kaca ngarep. Kapan rute iki nampa panjalukan get
saben /
, bakal bali ing view
welcome
.
Kabeh jalur Laravel definiti ing Panjenengan routing
, sing ana ing direktori dei routes
. Akibate, l'AppProvidersRouteServiceProvider
saka aplikasi baris munggah cathetan iki. File kasebut route/web.php
ngemot rute sing dikelola kanggo antarmuka web sampeyan.
Struktur path banget prasaja. Bukak file sing cocog (`web.php
` o `api.php
` ) lan miwiti baris kode karo `Route:: `
, ngiring dening panjalukan sing pengin diwènèhaké menyang rute tartamtu lan banjur nemtokake fungsi sing bakal dileksanakake sawise panjalukan.
Laravel nawakake cara path ing ngisor iki:
get
post
put
delete
patch
options
Dalane yaiku defiNited ing Laravel ing kelas Route karo HTTP, rute kanggo reply lan cedhak, utawa controller.
Ayo ndeleng carane sampeyan bisa nggawe dalan dhewe ing Laravel.
Saiki aku bakal nggawe path dhasar sing bakal nyithak tabel kaping 2.
Route::get('/table', function () {
for($i =1; $i <= 10 ; $i++){
echo "$i * 2 = ". $i*2 ."<br>";
}
});
Ing kode ing ndhuwur, aku nggawe path request GET kanggo URL /table
, sing bakal nyithak tabel kaping 2 ing layar.
Saiki ayo ndeleng kode sing padha, parameterisasi nomer sing pengin tabel perkalian:
Route::get('/table/{number}', function ($number) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Ing kode 'number
' antarane braces nggantosi paramèter, IE nomer sing tabel multiplikasi bakal diwilang. Kapan URL saka jinis kasebut ditemtokake /table/n
, banjur tabel nomer bakal dicithak n
.
Ana uga cara kanggo nggabungake loro fitur ing siji dalan. Laravel nawakake fitur paramèter opsional sing ngidini sampeyan nambah paramèter opsional nggunakake tandha pitakon '?' sawise parameter opsional lan nilai pradefibengi. Ayo ndeleng contone:
Route::get('/table/{number?}', function ($number = 2) {
for($i =1; $i <= 10 ; $i++){
echo "$i * $number = ". $i* $number ."<br>";
}
});
Ing kode ndhuwur kita digawe parameter route kita, nggawe nomer opsional, supaya yen pangguna rute `/table
` banjur bakal ngasilake tabel 2 kanthi standardefinite lan yen pangguna rute menyang `/table/{number}
Banjur meja nomer 'number'
bakal diprodhuksi.
Ing conto sadurunge kita digawe path kanggo ngasilaken Tabel pingan, nanging carane kita bisa mesthekake yen parameter path bener nomer, supaya kasalahan nalika ngasilaken tabel pingan?
Ing Laravel, sampeyan bisa defingrampungake kendala ing parameter rute nggunakake metode `where
` ing conto rute. Ing `where
` njupuk jeneng parameter lan ekspresi reguler kanggo parameter kasebut.
Saiki ayo ndeleng conto kendala kanggo parameter ` kita{numero}
` kanggo mesthekake yen mung nomer sing dilewati menyang fungsi kasebut.
Route:: get ( '/table/{numero?}' , funzione ( $numero = 2 ) {
for( $i = 1 ; $i < = 10 ; $i + + ) {
echo "$i * $numero = " . $i * $numero . "<br>" ;
}
} )->where( 'numero' , '[0-9]+' ) ;
Ing kode ndhuwur, kita digunakake expression biasa kanggo nomer path. Saiki, yen pangguna nyoba rute menyang /meja/no bakal ditampilake pangecualian NotFoundHttpException.
Ing Laravel, sampeyan bisa definish cara Controller kanggo rute. Cara pengontrol nindakake kabeh tumindak defibengi saben pangguna ngakses rute kasebut.
Kanthi kode ing ngisor iki, kita nemtokake cara pengontrol 'functionname'
menyang rute:
Route:: get ( '/home' , 'YourController@functionname' ) ;
Kode diwiwiti karo `Route::`
lan mulane definishes cara request kanggo path. Salajengipun, defiRampung dalan lan pengontrol bebarengan karo metode kanthi nambahake simbol @ sadurunge jeneng metode.
Ing Laravel, sampeyan bisa definish jeneng kanggo dalan sampeyan. Jeneng iki asring banget migunani. Contone, yen sampeyan pengin ngarahake pangguna saka siji lokasi menyang lokasi liyane, sampeyan ora perlu definish URL pangalihan lengkap. Sampeyan mung bisa menehi jeneng. Sampeyan bisa definish jeneng rute nggunakake metode `name
` ing conto rute.
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’);
Saiki, aku bisa nggawe maneh url kanggo path iki, liwat kode ing ngisor iki:
$url = route('table');
Kajaba iku, kanggo pangalihan menyang URL iki, sintaks sing bener yaiku:
return redirect()->route('table');
Route Groups
I Route Groups
, secara harfiah path grup, minangka fitur penting ing Laravel, sing ngijini sampeyan kanggo grup path. Grup path migunani yen sampeyan pengin ngetrapake atribut menyang kabeh jalur sing dikelompokake. Yen sampeyan nggunakake grup path, sampeyan ora kudu aplikasi atribut individu kanggo saben path; iki supaya duplikasi. Ngidini sampeyan nuduhake atribut kaya middleware
o namespaces
, rasane defingrampungake atribut kasebut ing saben path individu. Atribut sing dienggo bareng iki bisa dilewati ing format array minangka parameter pisanan kanggo metode kasebut Route::group
.
Syntax of a Route Group
Route::group([], callback);
manuk dara []: yaiku array sing diterusake menyang metode grup minangka parameter pisanan.
Tuladha saka 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" ;
});
});
Ing kode, defiayo golek cara klompok(), kang ngandhut loro paramèter, i.e array
e closure
. Ing njero closure
, kita bisa defirampung pira route
kita pengin. Ing kode ndhuwur, kita duwe defirampung telu route
.
Yen liwat browser kita ngakses URL localhost/myproject/first
banjur sing pisanan campur tangan route
ngetik ing browser first way route
.
Kanthi URL localhost/myproject/second
banjur teka kapindho route
ngetik ing browser second way route
.
Nalika karo URL localhost/myproject/third
banjur teka katelu route
ngetik ing browser third way route
.
Route Groups
Ater-ater saka route
digunakake nalika kita pengin nyedhiyakake struktur URL sing umum kanggo macem-macem route
.
Kita bisa nemtokake awalan kanggo kabeh path definites ing grup nggunakake pilihan array awalan ing Route Groups
.
Tuladha saka 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";
});
});
Kode kasebut ngemot telung jalur sing bisa diakses saka URL ing ngisor iki:
/movie/godfather ---> Godfather casting
/movie/pulpfiction ---> Pulp Fiction casting
/movie/forrestgump ---> Forrest Gump casting
Kita uga bisa nemtokake middleware kanggo kabeh rute ing grup. Middleware kudu defirampung sadurunge nggawe grup. Kanggo ndeleng carane nindakake iki, waca artikel kita Laravel middleware cara kerjane.
Conto:
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";
});
});
Caranipun name
digunakake kanggo ater-ater saben jeneng route
kanthi senar sing ditemtokake. Ing cara name
, kita kudu nemtokake senar kanthi karakter mburine ing awalan.
contone web.php
Route::name('movie.')->group(function()
{
Route::get('users', function()
{
return "movie.films";
})->name('films');
});
Ercole Palmeri
Sektor angkatan laut minangka kekuwatan ekonomi global sing sejatine, sing wis ngarahake pasar 150 milyar ...
Senin kepungkur, Financial Times ngumumake kesepakatan karo OpenAI. FT menehi lisensi jurnalisme kelas donya…
Mayuta-yuta wong mbayar layanan streaming, mbayar biaya langganan saben wulan. Umume pendapat yen sampeyan…
Coveware dening Veeam bakal terus nyedhiyakake layanan respon insiden pemerasan cyber. Coveware bakal nawakake kemampuan forensik lan remediasi…