Laravel 8 Route Kullanımı

Laravel 8 Route Kullanımı

Tarhi : 29-12-2020 01:57:34 | Yazar : ÇAĞLAR BOSTANCI

Merhaba arkadalar bu kategoride sizlere laravel 8 sürümü ile destek vereceğim. Laravel 8 ile route yönlendirmelerinde güncelleme oldu. Eski sürümlere göre yaptığınız Route::get() yönlendirmelerini laravel 8 de denediğinizde hata sayfasıyla karşılacaksınızdır. Bu yazıda sizlere laravel 8’in route yönlendirmeleri hakkında bilgi paylaşımı yapacağım. Öncelikle bildiğiniz gibi laravel route yönlendirmeleri projeniz/routes|web.php dizininde yapılmaktadır. İlk olarak olağan bir yönlendirme yapalım.

Laravel 8 ile gelen yeni route yönlendirmesine bir örnek yapalım. Öncelikl MerhabaController adında bir tane Controller oluşturalım.

Daha sonra MerhabaController’ımızı açalım ve içerisine aşağıdaki selam fonksiyonunu oluşturalım.

routes/web.php dosyamızı açalım ve bu sayfaya use App\Http\Controllers\MerhabaController; MerhabaController’ımızı çağıralım. Ardından sayfa yönlendirmemizi yapalım.

Windows için cmd çalıştıralım, projemizin olduğu dizine gidelim ve terminale aşağıdaki komudu yazalım.

Tarayıcımızın adres çubuğuna http://localhost:8000/selam yazalım. Ekranda “Merhaba Laravel 8” metnini görüyorsanıp problem yok.

Hem get ile gönderdiğinizde hemde post ile gönderdiğinizde aynı controller metodu çalıştıracaksanız Route::match metodunu kullanabilirsinzi. Örneğin:

use App\Http\Controllers\MerhabaController; Route::match([‘get’,’post’],’/selam’,[MerhabaController::class,’selam’]);

İsterseniz Route::get,Route::post,Route::put,Route::delete,Route::patch,Route::options yönlendirmelerinde ise Route::any kullanabilirsiniz.

Post gönderimlerinizde ise projeniz/routes/web.php sayfasına use Illuminate\Http\Request; klasını dahil ederek post iseteklerinide alabilirsiniz.

Örnek bir get ve post işlemini yaptığımız bir sayfa yapalım öncelikle Route yapımızı routes/web.php aşağıdaki gibi düzenleyelim.

Daha sonra projeniz/App/Http/Controllers/MerhabaController.php dosyamıza aşağıdaki metodu ekleyelim

Son olarak bir tane projeniz/resources/views/ dizinine selamla.blade.php dosyamızı oluşturlave içerisini aşağıdaki gibi düzenleyelim.

Tarayıcımızın adresine http://localhost:8000/selam yazalım ve post edelim gelen verileri ekranda görüyorsanız problem yok.

Laravel 8 Redirect Kullanımı

Laravel 8 de Redirect metodu sayfa yönlendirmeleri için kullanılır örneğin /,/index,/anasayfa,/home şeklindeki sayfaları /selam'a yönlendirelim.

projeniz/routes/web.php'yi aşağıdaki gibi düzenleyelim

Laravel 8 View Routes Yönledirmesi

Eğer bir controller kullanmadan bir sayfa (x.blade.php) görütülemek istiyorsanı web.php'yi aşağıdaki gibi düzenleyebilirsiniz

Daha önce oluşturduğumuz selamla.blade.php sayfasına direk yönlendirme yapalım.

Eğer yönlendirem yaparken bir veride göndermek istiyorsanız web.php'yi aşağıdaki gibi düzenleyin.

selamla.blade.php'ye $gidenVeri="Merhaba Laravel 8"; gönderildi. selamla.blade.php de ise aşağıdaki gibi karşılayabilirsiniz.

Laravel 8 Route Parametre Gönderimi

routes/web.php yönlendirme yaparken parametre gönderdimleride aşağıdaki gibi olmaktadır.

Gelen parametreleri ise controller sayfamızda aşağıdaki gibi alıyoruz

Bu sefer birden çok parametre gönderelim.

MerhabaController'ımızda parametrelerimizi alalım.

Her zaman sayfamıza parametre gelmeyebilir bunun için varsayılanlar oluşturmamız gerekir

Controllerimızıda düzenleyelim.

Laravel 8 Parametre Kısıtlamaları

İsterseniz gelen parametere kısıtlamalar getirerek bir ön elemeden geçirip daha sağlıklı parametrelerin gelmesiniz sağlaya biliriz.

Diğer örnek filitrelemeleri aşağıda görebilirsiniz.

Laravel 8 Url İsimlendirme

Laravel 8'de yönlendirmeleriniz isimlendirerek daha kısa ve pratik yönlendirmeler yapabilirsiniz.

İsimlendireceğiniz url'ler parametreli olduğunda ise aşağdaki gibi kullanılır.

Laravel 8 Önek Kullanımı

Belirli yönlendirmleri gruplayarak sürekli önekleri yazmak zorunda kalmaz ve yönlendirmelerinizde bir group halinde kalmış olur. Mesala admin panel yönlendirmleri aşağıdaki gibi gruplanabilir.

Laravel 8 Önekli Route Adlandırma

Gruplamış olduğunuz yönlendirleri aşağıdaki gibi adlandırabilirsiniz.

Daha detaylı bilgi için Laravel sayfasını ziyaret edebilirsiniz.