Halo sahabat koder! Pada tutorial kali ini, kodehero akan membahas tentang bagaimana cara membuat route dan view pada framework laravel. Buat yang belum tahu bagaimana cara install laravel, bisa cek dulu tutorial sebelumnya tentang cara instal laravel disini. Buat yang udah bisa install, sekarang saatnya kita belajar routing dan membuat view di laravel.
Pada tutorial kali ini, kita akan membahas bagaimana cara routing web yang benar pada framework laravel. Tidak hanya itu, kita akan menggunakan studi kasus yang nyata supaya sahabat koder bisa cepat paham dan bisa mengaplikasikannya langsung pada aplikasi yang akan atau sedang kalian buat. Tapi sebagai catatan, tutorial kali ini hanya membahas mengenai penggunaan route dan view, jadi sama sekali tidak membahas penggunaan controller maupun model. Untuk tutorial mengenai penggunaan controller dan model akan dibahas pada tutorial selanjutnya.
Apa yang akan kita buat?
Kita akan membuat aplikasi sederhana yang memanfaatkan konsep routing dan view pada laravel. Beberapa fitur route yang akan kita pelajari adalah:
• Route ke halaman statis
• Route dengan melempar variabel ke url (melempar parameter ke fungsi)
• Route dengan menggunakan nama
Itu saja :D Kok dikit? Ya supaya tutorialnya ga terlalu panjang juga hehe
Route ke halaman statis
Kita akan membuat halaman home sebagai halaman utama sekaligus halaman yang statis. Untuk itu, silahkan sahabat koder buka folder
routes/web.php
. Pada file ini kita akan membuat route utama untuk aplikasi kita yang akan mengarah ke halaman home. Ganti route default pada file tersebut:
//Jika diakses maka akan memanggil view pada folder resources/views/home.blade.php
Route::get('/', function()
{
return view('home');
});
Pastikan temen temen sudah membuat file view pada folder
resources/views/home.blade.php
. Untuk isinya terserah kalian, tapi pada tutorial kali ini saya hanya akan menampilkan teks “Selamat Datang di Kode Hero”. Sekarang, jika temen teman akses aplikasinya pada localhost:8000, maka akan menampilkan halaman home statis yang sudah dibuat tadi.Route dengan melempar variabel ke url (melempar parameter ke fungsi)
Sama seperti tadi, kita hanya perlu mengubah file
routes/web.php
dan membuat route baru. Namun pada route kali ini kita akan melempar variabel pada url agar nantinya dibaca oleh route dan diaplikasikan ke suatu fungsi sesuai keinginan kita. Berikut contohnya:
// routes/web.php
Route::get('contact/{name}', function ($name = null) {
return view('contact', [
'name' => $name
]);
});
Pada dasarnya route contact ini akan meminta suatu variabel berupa name untuk nantinya digunakan pada view, maka ketika kita memanggil view kita juga memasukan variabel name kedalam array. Kemudian pada view nya kita bisa menggunakan variabel name untuk menampilkan isi dari variabel tersebut. Berikut contoh sederhana view yang menggunakan name sebagai variabelnya.
// resources/views/contact.blade.php
Kontak: {{ $name }}
Ketika temen temen mencoba mengakses halaman contact, beri variabel name pada url nya, misal http://localhost:8000/contact/hero. Maka laravel akan menampilkan nama “hero” pada view nya. Jika tidak diberi variabel nama pada url, maka laravel akan memanggil halaman 404 not found.
Jadi kurang lebih seperti itu penggunaan variabel pada saat routing di laravel. Temen temen bisa memanfaatkan fitur ini untuk aplikasi sesungguhnya misalnya untuk melempar slug suatu model agar dapat ditampilkan pada view.
Route dengan menggunakan nama
Ketika temen temen membutuhkan suatu link untuk diarahkan ke route lain, temen temen bisa memanfaatkan fitur nama pada route untuk mempermudah mengingat nama suatu route. Misalnya route contact kita beri nama contact, sehingga temen temen tidak perlu menuliskan nama lengkap seperti http://localhost:8000/contact dan hanya perlu memanggil nama routenya saja dengan fungsi
route()
pada blade view. Contoh kita akan menggunakan halaman home dan membuat link menuju halaman contact.Pada route kita cukup menambahkan fungsi
name()
pada akhir route:
// routes/web.php
Route::get('contact/{name}', function ($name = null) {
return view('contact', [
'name' => $name
]);
})->name('contact');
Kemudian ubah view halaman home untuk memanggil route contact:
// resources/views/home.blade.php
Selamat Datang di Kode Hero<br><br>
Kontak:<br>
<a href="{{ route('contact', 'Hero') }}">Hero</a>
Pada koding diatas, terlihat kita cukup mendefinisikan url dengan menggunakan fungsi
route()
saja, kemudian ditambahkan variabel nama yang akan kita lempar ke route yaitu “Hero”. Ketika link di klik maka route akan otomatis membuka halaman contact dan menggunakan “Hero” sebagai variabel name nya. Kamu bisa ganti isi variabel dengan apa saja.Penggunaan name ini akan cukup membantu ketika kalian memiliki aplikasi yang cukup rumit dengan banyak route di dalamnya. Jadi nggak perlu nulis link secara penuh dan tinggal memanggil fungsi
route()
saja.Akhir Kata
Nah, cukup mudah kan proses penggunaan routing di laravel? Sebenernya masih banyak lagi fitur route di laravel, seperti grouping, middleware, namespace dan lain sebagainya. Tapi untuk pemula mungkin 3 cara diatas sudah cukup. Untuk selanjutnya, jika temen temen ingin belajar lebih jauh tentang route di laravel bisa membuka dokumentasinya disini, atau nanti saya buatkan tutorial lain yang lebih advance. Jadi stay tune ya!
0 Komentar