Tutorial Codeigniter 4 - Mengatur Routing di Codeigniter 4

Selamat datang di website CopyPasteKode, dalam tutorial kali ini kita akan membahas cara mengatur routing di codeigniter 4. 

Apa itu Routing atau routes?

Routing adalah sebuah fitur yang di sediakan oleh Codeigniter 4, fitur ini digunakan untuk mengatur akses pengguna aplikasi pada URL tertentu.

Contoh hhtps://localhost/mahasiswa

URL diatas adalah sebuah contoh URL, pada saat kita mengakses URL tersebut Routing mengatur jika ada request URL yang di terima dari pengguna.

Sebenarnya Codeigniter tidak mengharuskan setiap halaman harus dibuat routing tidak seperti Laravel yang mengharuskan untuk membuat routing, Codeigniter lebih dinamis meskipun kita tidak menuliskan perintah di routing, kita masih dapat mengakses Controller serta method di dalamnya.

Membuka File Routing

Untuk mengakses file untuk setting routing, kalian bisa membukan file di Applikasi project Codeigniter 4 kalian di app/Config/Routes.phppada file ini terdapat 1 routing bawaan codeigniter yaitu : 
$routes->get('/', 'Home::index');

Keterangan : 

pada baris perintah route tersebut ada 3 bagian yang perlu anda perhatikan :

  •  yang pertama adalah HTTP Request Method, dalam contoh diatas adalah get, jika kita isi dengan get, maka akan membaca URL yang kita tuliskan di URL Browser, jika anda membuat pemrosesan terhadap entrian form bisa menggunakan post.
  • yang kedua adalah URL yang akan digunakan, dalam contoh diatas kita menuliskan ‘/‘ artinya adalah mengakses halaman utama dari webnya 
  • yang ketiga adalah controller dan method apa yang akan diakses saat pengguna aplikasi mengakses URL dibagian kedua.

Menambah Routing Baru

Bagaimana cara menambah routing?, sebelum kita membuat routing baru sebelumnya kita siapkan contoh controller terlebih dahulu silahkan buat file pada app/Controllers dengan nama Mahasiswa.php dan isikan code di bawah:
  1. <?php
  2. namespace App\Controllers;
  3.  
  4. class Mahasiswa extends BaseController
  5. {
  6. public function index()
  7. {
  8. echo 'Halo ini adalah controller Mahasiswa';
  9. }
  10.  
  11. public function profil()
  12. {
  13. echo 'Ini adalah method profil di controller Mahasiswa';
  14. }
  15. }
Keterangan : 
  • Kita buat controller dengan nama Mahasiswa, sehingga class-nya kita berikan nama Mahasiswa. 
  • Didalam controller Mahasiswa kita buat 2 method dengan nama index, dan profil

Sekarang coba akses 2 method pada Controller Mahasiswa yang telah dibuat, sebelumnya kita jalankan dulu local server-nya dengan menuliskan perintah  dibawah ini:

 php spark serve 
pada terminal atau dengan GIT



kemudian akses URL berikut
 http://localhost:8080/Mahasiswa 

Maka akan tampil sebagai berikut:


Berikutnya akses URL berikut ini :
 http://localhost:8080/mahasiswasiswa/profil 
Maka akan tampil sebagai berikut:

jika controller dan methodnya berhasil di jalanakan selanjutnya kita tinggal membuat routing baru pada app/Config/Routes.php sebagai berikut:
 $routes->get('/profil-mahasiswa', 'Siswa::profil'); 

sehingga menjadi seperti ini:


Penjelasan :

perintah routing diatas memiliki arti :

  • ketika pengguna aplikasi mengakses url profil-mahasiswa, jadi kalau di contohkan dalam hal ini adalah localhost:8080/profil-mahasiswa, dengan menggunakan method GET artinya kita menuliskan di URL Browser maka akan mengakses method profil di Controller Mahasiswa, sehingga akan tampil :
Dengan Routing

Tanpa Routing

Membuat Placeholder di Routing

Berikutnya kita akan belajar bagaimana cara membuat placeholder di routing, secara sederhana placeholder berfungsi untuk menambahkan parameter di bagian routing, parameter ini nantinya dapat digunakan dibagian method di controller.

selain dapat menambahkan parameter, anda juga dapat menentukan jenis data yang dikirimkan melalui parameter tersebut, apakah berbentuk angka, atau huruf, atau dapat berupa bentuk data lainnya, sehingga anda dapat mengatur value parameter yang dikirimkan nantinya.

Untuk dokumentasi resmi dari codeigniter 4, bisa anda lihat melalui alamat sebagai berikut : https://codeigniter.com/user_guide/incoming/routing.html?highlight=route#placeholders

Sebagai contoh kita akan membuat method baru didalam controller Mahasiswa, method baru kita beri nama dataMahasiswa, sehingga kurang lebih controller Mahasiswa menjadi seperti berikut ini :

  1. <?php
  2. namespace App\Controllers;
  3. class Mahasiswa extends BaseController
  4. {
  5. public function index()
  6. {
  7. echo 'Halo ini adalah controller Mahasiswa';
  8. }
  9.  
  10. public function profil()
  11. {
  12. echo 'Ini adalah method profil di controller Mahasiswa';
  13. }
  14.  
  15. public function dataMahasiswa($nama,$umur)
  16. {
  17. echo "Nama Mahasiswa $nama, umur $umur";
  18. }
  19. }

method dataMahasiswa memiliki 2 parameter, yaitu nama dan umur

kita akan mengakses method dataMahasiswa menggunakan Routing dengan menambahkan routing baru pada app/Config/Routes.php  dengan code sebagai berikut:

$routes->get('data-mahasiswa/(:alpha)/(:num)', 'Mahasiswa::dataMahasiswa/$1/$2');

Lalu akses URL :  localhost:8080/data-mahasiswa/Rian/20
maka akan tampil sebagai berikut :

Perhatikan dibagian routing kita menambahkan jenis parameter (placeholder) pertama adalah (:alpha) yang artinya nilainya harus berupa huruf, dan dibagian parameter kedua (placeholder) adalah (:num) yang artinya nilainya harus berupa angka.

Pada dokumentasi dari Codeigniter 4, terdapat beberapa jenis placeholder yang dapat digunakan:

  • (:any) digunakan untuk menangkap seluruh jenis inputan
  • (:segment) digunakan untuk menangkap seluruh jenis inputan kecuali forward slash (/)
  • (:num) digunakan untuk menangkap angka
  • (:alpha) digunakan untuk menangkap data berupa huruf
  • (:alphanum) digunakan untuk menangkap data berupa huruf dan angka
  • (:hash) memiliki konsep yang sama dengan segment hanya saja.. ini lebih mudah digunakan jika ketika id pada routing menggunakan hash

Jadi kurang lebih seperti itu ya guys ya beberapa fitur routing yang dapat digunakan pada Codeigniter 4, untuk pembahasan tentang routing lebih lanjut, kalian bisa lihat di dokumentasi resmi dari Codeigniter 4 :

https://codeigniter4.github.io/userguide/incoming/routing.html

Baik sekian dulu sampai jumpa di tutorial Codeigniter 4 Selanjutnya


















إرسال تعليق

أحدث أقدم

نموذج الاتصال