Hallo ketemu kembali dengan saya :D
Dulu tulisan saya gak dihargai, tapi semenjak ada jagocoding.com tulisan saya lebih dihargai. terimakasih jagocoding.com ^^ #korban_iklan_klinik_tongfeng #curhat
Hari ini saya akan melanjutkan tutorial saya yang sebelumnya Basic Routing Laravel - Karena WebApp kamu perlu petunjuk arah.
Masih tentang routing, kenapa saya masih membahas routing, karena menurut saya routing itu sangat penting di Laravel, Jika kamu belum menguasai Routing, maka kamu akan kesulitan untuk mempelajari Laravel lebih dalam.
oke kita lanjutkan saja. cekibrot.
Constraint Routing
kisah ini akan menjadikan anda sebagai pemeran utamanya... anda siap. kita mulai.
Anda adalah seorang raja di kerajaan ulala, kehidupan rakyat anda makmur dan sejahtera. anda mempunyai seorang istri yang telah mengandung 9 bulan dan tidak lama lagi melahirkan. beberapa hari kemudian, kabar bahagia itu pun datang, ratu telah melahirkan seorang anak laki-laki yang sehat. anda pun senang, sebagai raja anda sangat senang dan mengundang semua rakyatnya untuk berpesta di istana. kemudian raja memerintahkan aplikasi yang menyapa semua tamu yang datang.
(untuk membuat aplikasi tersebut kita menggunakan routing paramater seperti tutorial sebelumnya)
berikut contohnya
Route::get('hallo/{nama_tamu}', function($nama_tamu) { return 'hallo '.$nama_tamu.' selamat datang di istana'; });
jika kita mengakses halaman localhost/myapp/hallo/angga maka akan menampilkan hallo angga selamat datang di istana, begitu juga jika tamu yang lain maka aplikasi ini akan menyapa dengan namanya.
Kemudian terdengar isu mahluk alay akan menyamar untuk datang ke istana, mahluk alay adalah mahluk yang akan memberikan kutukan kepada pangeran kecil. mahluk alay sangat di takuti dan berbahaya, tapi, mahluk alay memiliki kebiasaan menggunakan gabungan hurf dan angka dalam penulisannya. kemudian anda memerintahkan agar aplikasi tidak mengizinkan mahluk alay memasuki istana, apa yang harus dilakukan aplikasi ?? #bersambung lo kira ini sinetron ??
sebelumnya, coba anda memasukkan url berikut ini localhost/myapp/hallo/ci3nt4imo3t, maka browser akan menampilkan hallo ci3nt4imo3t selamat datang di istana. gawat, kalo seperti ini mahluk alay bisa masuk kedalam istana.
oke langsung saja untuk memberikan batasan pada route maka bisa menggunakan where clause seperti berikut
Route::get('hallo/{nama_tamu}', function($nama_tamu) { return 'hallo <strong>'.$nama_tamu.'</strong> selamat datang di istana'; })->where('nama_tamu', '[A-Za-z]+');
sekarang anda coba lagi, apa yang ditampilkan. yang ditamplikan adalah page_not_found, atau halaman tidak ditemukan :D
sekarang pesta dapat berlangsung terus hingga usai #the end
Penamaan Route
Seperti pangeran yang baru lahir tadi, Route juga lebih baik diberikan nama. Hal ini bertujuan untuk mempermudah dalam pembuatan link dan redirect. penamaan pada route dapat dilakukan sebagai berikut
Route::get('hello/aku/suka/kamu',['as'=>'hai','uses'=>function() { return 'hello'; }]);
penamaan dapat dilakukan dengan mengubah parameter kedua dari fungsi get. perlu diketahui tanda [ ] adalah array yang dulu biasa di tulis seperti ini array(). untuk nama di letakkan pada index as, sedangkan closure/function diletakkan pada index uses.
contoh penggunaan nama route dalam melakukan redirect
Route::get('redirect',function (){ return Redirect::route('hai'); });
dengan penggunaan nama route, kita dapat menyingkat Url yang ada.
oke cukup itu saja dulu malam ini, besok saya akan lanjutkan membahas mengenai Route + Filter, Stay tune ya
Terima kasih, semoga bermanfaat ^^
sangat mengharapkan kritik dan saran dari pembaca