Laravel 7 Route Yapısı
Route yapısı bir web uygulamasının olmazsa olmazlarındandır. Route yapısını kısaca anlatmak gerekirse, bir web uygulamasına gelen isteklerin tanımlandığı ve ilgili controller fonksiyonuna yönlendirildiği yapıdır.
Bir Route Oluşturmak
Laravel’de routelarımızı routes/web.php
dosyasına tanımlarız. Eğer bir API oluşturuyorsanız routelarınızı routes/api.php
dosyasına tanımlayın. Laravel kullanırken routelar Route classı kullanılarak tanımlanır.
Route::get(‘/’,$callback);Route::post(‘/’,$callback);Route::put(‘/’,$callback);Route::patch(‘/’,$callback);Route::delete(‘/’,$callback);Route::any(‘/’,$callback);
Route::get()
“get” metodu için, Route::post()
“post” metodu için, Route::put()
“put” metodu için, Route::patch()
“patch” metodu için, Route::delete()
“delete” metodu için, Route::any()
tüm metotlar için kullanılır.
Redirect Route Tanımlamak
Eğer web sitenizdeki sayfalardan birinin yeri değişmiş ya da artık kalcı olarak başka bir sayfaya yönlendirmek istiyorsanız Laravel 7 bunun için 2 metoda sahip. Yine tahmin edebileceğiniz gibi Route classında bulunan bu metotlar Route::redirect()
, Route::permanentdirect()
metotlarıdır.
Route::redirect(‘/here’,’/there’,status);
Route::redirect()
metodu genellikle web sitenizdeki yeri değişmiş sayfalardan birisi için kullanır. Aynı zamanda 3.parametresi ile hangi statusde yanıt verileceğini belirlemenize de olanak tanır. Bu parametre default değer olarak 302 Found
alır. İsteğe bağlı olarak 301 Moved
Permanently
de kullanılabilir.
Route::permanentdirect(‘/here’,’/there’);
Route::permanentdirect()
metodu genellikle web sitenizdeki artık kalcı olarak başka bir sayfaya yönlendirmek için kullanır. Default status değeri olarak 301 MovedPermanently
alır.
View Route Tanımlamak
Bir static dosyayı bir route olarak atamak için Route::view()
kullanılır. Bu metot herhangi bir controller yada model kullanmaz. Ancak 3.parametre olarak isteğe olarak bir array alır. Bu arraydeki değerler statik dosyanın içinde kullanılabilir.
Route::view(‘/static’,’static’,[‘name’ => ‘John’]);
Route Parametreleri
Laravel içinde bir route yapısı tanımlanırken eğer route içinde bir parametre tanımlarken parametremizi {} arasına tanımlarız. Laravel içinde bir route yapısı tanımlanırken parametremizi 2 farklı şekilde tanımlayabiliriz.
Eğer parametremizin kesinlikle bir değer alması gerekiyorsa parametremizi aşağıdaki gibi tanımlayabiliriz.
Route::get(‘/user/{id}’,$callback);
Eğer parametremizin kesinlikle bir değer alması gerekmiyorsa parametremizi aşağıdaki gibi tanımlayabiliriz.
Route::get(‘/user/{id?}’,$callback);
Bugsız günlerde görüşmek üzere. Hoşça kalın….