Laravel 5.2 Route

Sitemize ait adres çubuğu yazıldığında hangi Controllera gideceğini veya direkt hangi sayfayı çağıracağımızı belirlediğimiz yerdir.

 

Hazırladığınız bir projeyi aylar sonra açtığımızda doğal olarak projenin temel yapısını unutmuş olacağız ve Ne Nerede gibi sorularla karşı karşıya kalacağız. Bu durumda yapmamız gereken projeyi detaylıca incelemek olacaktır ki bu bize zaman kaybı yaratacaktır. Laravel de ise bu durum tamamıyla farklı olacaktır çünkü tüm yönlendirmeleri Route içerisinde yapacağımız için aylar geçsede daha sonra temel yapısını sadece Route içerisinde bakarak öğrenebileceğiz.

 

Temel bilgileri öğrendiğimize göre ilk olarak Route dosyamızın bulunduğu yer ile kullanıma başlayalım.

 

app \ Http \ routes.php

 

Defualt olarak routes.php incelediğiniz zaman  

 

Route::get('/' , function() {
	return view('welcome')
});

 

yazdığını görürsünüz. Bu haliyle home sayfasının welcome sayfasına gitmesini söylüyoruz. Yani dizin olarak

 

resources \ views \ welcome.blade.php 

 

Return etmesini söylüyoruz.

 

Dosyada bulunan .blade kısmına şuan takılmayın View dersi içerisinde bunu da göreceksiniz.

 

Routes.php nin defualt halinde Controller kullanmadan direkt View dosyasını return etmesini söylüyoruz. Bu kullanım şeklini biz normalde kullanmayacağız çünkü Routes.php içerisinde sayfa yönlendirmesini ilk Controllera gönderip Controller içerisinde istediğimiz sayfayı return edeceğiz.

 

Route içerisinde ben en çok Get ve Post methodlarını kullanıyorum. Get Methodu Sayfa ilk açıldığında olacak işlemleri kapsar. Post methodu ise sayfa içerisinde butona basıldığında yapılacak işlemde kullancağız. Şimdi genel bir routes.php örneği verip tek tek açıklayarak Routenin tüm hallerini öğrenelim

 

Route::get('/', 'ControllerDosyamiz@AnaSayfaFonksiyonu');

Route::post('/', 'ControllerDosyamiz@AnaSayfaPostFonksiyonu');

Route::get('/test/{id?}', 'ControllerDosyamiz@ParametreTestFonksiyonu');

 

www.deneme.com domainini ele alırsak bu siteye ilk girdiğimizde yukarıda bulunan Routes dosyamıza göre ControllerDosyamiz Adında ki Controller dosyasının içerisinde bulunan AnaSayfaFonksiyonu  içerisinde bulunna kodların çalışacağını belirtiyoruz.

 

www.deneme.com sitemizde ana sayfamızda butona tıkladığımızda ControllerDosyamiz Adında ki Controller dosyasının içerisinde bulunan AnaSayfaPostFonksiyonu  içerisinde bulunna kodların çalışacağını belirtiyoruz.

 

www.deneme.com/test/2 sitemizde test sayfamıza 2 değeri ile girdiğimizde ControllerDosyamiz Adında ki Controller dosyasının içerisinde bulunan ParametreTestFonksiyonu içerisine 2 id değerini göndererek Fonksiyon içerisinde bulunan kodların çalışacağını belirtiyoruz.

 

Routes içerisinde en çok Get ve Post methodlarının yanında ise Parametre kullanımını gerektikçe kullanmamız gerekmektedir. Yukarıda Routes kodlarının yanında ise birde bu kodları Group içerisine alıp middleware içerisine almamız yeri geldikçe gerekecektir. 

 

Middleware ne olduğunu şuan düşünmeyin sadece kulanımının yeri geldiğinde gerekeceği ve nasıl kullanabileceğimizi görmemiz yeterli olacaktır. Aceleci olmanız şuan iyi birşery olmayacaktır o yüzden bu tür soruları düşünmeden yavaş yavaş ve iyice öğrenerek devam edelim :)

 

Middleware kullanımı ise

 

Route::group(['middleware' => ['web']], function () {

	Route::get('/', 'ControllerDosyamiz@AnaSayfaFonksiyonu');

	Route::post('/', 'ControllerDosyamiz@AnaSayfaPostFonksiyonu');

	Route::get('/test/{id?}', 'ControllerDosyamiz@ParametreTestFonksiyonu');
	
});

 

Burada ki group da web middleware kullandığımızı belirtiyoruz. Web Middleware Laravelin kendi middlewarelerinden biridir. Bu Middleware group içerisinde bulunan rotalar için geçerli olacaktır. Web Middleware ise CSRF Token güvenliğini bize sağlamaktadır. Sayfa içerisinde hidden değer üreterek kullanıcının site kullanımında arka planda gönderdiği token kodu ile hidden içerisinde ki kodun aynı olup olmadığını kontrol eder. Detaylarını başka bir derste anlatacağım tabi ki :)

 

Route kullanımının genel yapısı burada anlattığım gibidir. Controller , View ve Middleware kullanımını şuanda bilmediğinizden dolayı yukarıda bazı sorular oluşması çok normaldir fakat şuan sadece route kullanımına yönelelim. Zaten ileri ki derslerde route kullanımını da hep kullanacağımızdan öğrendiklerimizi hep geliştireceğiz.

 

Sorunuz olduğunda çekinmeden iletin lütfen :) Bir sonraki "View Kullanım" dersimizde görüşmek üzere :)


Yorumlar

Avatar
Oğuzhan ÇAKAR  - 8 Yıl Önce
Teşekkür ederim @Mesut Bey Ne yazık ki vakit olmadığından devamını getiremiyorum. Hala birilerinin işe yaraması mutlu edici bir şey :) Laravel 5.2 sürümsel eski de olsa temel açıdan işe yarayacağından ilk fırsatta devamını getireceğim :)
Avatar
Mesut KURT  - 8 Yıl Önce
Güzel anlatım olmuş eline sağlık

Düşünceni Bizimle Paylaş