Laravel yönlendirmelerde slash parametreleriyle rotaları hızlı bir şekilde tanımlama yeteneği bulunmaktadır. Eğik çizgi yani slash parametreleri ile kastettiğimiz, aşağıdaki gibi HTTP isteğine izin veren bir URL'dir.

localhost/myParam/myParam2

Bu tür yönlendirme yalnızca SEO için harika olmakla kalmaz, aynı zamanda kullanıcılar için anlaşılır bir URL'ye sahip olmak için gerçekten iyidir. 

Laravel'de Slash ile URL Parametrelerini Tanımlama

Bu tür bir işlevselliği kurmanın oldukça zor olacağını hayal edersiniz, ancak Laravel'in her zaman kanıtladığı gibi, bu gerçekten geliştirme hızını artıran bir framework. Slash parametreleri aşağıdaki sözdizimi ile tanımlanır.

{categoryName?}

Bu söz diziminin rotalara nasıl uyduğunu görmek için biraz daha derinlere inelim. 

Bu makalede, sıradan bir sorgu dizesi gibi tanımlanmış adlara sahip iki parametreyi kabul etmek için bir GET yolu tanımlayacağız.

NOT : Ben, index işlevi varsayılan karşılama görünümünü döndüren bir HomeController oluşturdum.

Hazırsak başlıyoruz. 

Öncelikle routes/web.php dosyamızı açıyoruz. ( Yoksa aoluşturabilirsiniz. ) 
Bu dosyada bulunan hoş geldiniz görünümünü döndüren kök URL'nin yolunu düzenleyeceğiz.

Route::get('/', 'HomeController@index');

Şimdi buna bazı parametreler ekleyelim. 

Diyelim ki bir E-Ticaret sistemi yazıyorum ve KategoriAdi/UrunID şeklinde bir URL yapmak istiyorum.
Bunlar
CategoryName ve ProductId olacaktır .

Rotayı aşağıdaki gibi görünecek şekilde düzenleyin;

Route::get('/{categoryName?}/{productId?}', 'HomeController@index');

Şimdi, rota parametrelerle ayarlandığında, aşağıdaki URL varyasyonlarından herhangi birine gidebiliriz.

  • localhost/
  • localhost/Giyim
  • localhost/Giyim/4

Veya benzeri gibi URL yapımız oluştu. 


Değerlerin URL aracılığıyla iletildiğini test etmek için, HomeController'i veya düzenlediğiniz Route'nin çağırdığı Contoller dosyamıza gidelim.

public function index(Request $request)
    {

        if ($request->isMethod('GET')) {
            if (isset($request->categoryName)) {
                echo $request->categoryName . " ";
            }
            if (isset($request->productId)) {
                echo $request->productId;
            }
        }

        return view("welcome");
    }

Şimdi localhost /Giyim/5'in URL'sine gidelim ve parametrelerin sayfaya yazdırıldığını göreceksiniz. Yani ekrana  Giyim ve 5 parametrelerini bastıracaktır. 
Bunun gibi rotaları tanımlamanın sonsuz çeşitliliği vardır ve dinamik web uygulamaları için mükemmeldir. Bu eğitimden de görebileceğiniz gibi, yönlendirme dosyanızın düzeni tamamen oluşturduğunuz uygulamanın türüne bağlı olacaktır.

İlerleyen zamanlarda Route'lara bazı kurallar eklemek ve daha fazla geliştirmek için Regex kuralları ile Route'ları filtrelemek konusuna değineceğim. 

Esenle kalın.