i (am) Blogger and U?

from X-periment to X-perience

Profile / Portofolio Pro 1

Aplikasi Profil / Portofolio Pro 1, software berbasis web untuk pengelolaan portofolio atau untuk menampilkan profil baik perusahaan maupun perseorangan. Selain itu software ini dapat p [...]

Online Shop Basic 2

Online Shop Basic 2 adalah paket minimalis aplikasi toko online instan yang dapat digunakan untuk menjalankan bisnis secara online. Aplikasi ini adalah aplikasi toko online yang "sudah [...]

Aplikasi Web: Online Shop PRO 2

Toko Online Pro 2 memiliki fitur-fitur yang sama persis dengan Toko Online Pro 1 tapi dengan theme/template yang berbeda.

Aplikasi Web: WebReview-Series 1

Web Review-Series 1 adalah paket aplikasi web yang memfasilitasi Anda yang ingin membuat situs yang berisi review dari berbagai hal. Review tentang suatu produk, Review tentang suatu te [...]

Toko Online Barang Digital 1

Toko Online Barang Digital 1 adalah paket full-features aplikasi toko online khusus untuk benda/barang digital seperti aplikasi/software atau ebook pdf, doc dkk yang dapat digunakan unt [...]

Aplikasi Web: Custom X

Aplikasi Web Custom X, software berbasis web dinamis dengan fitur utama adalah pembuatan SURVEY dan/atau POLLING dengan jumlah yang tidak dibatasi. Selain itu aplikasi ini juga memiliki [...]

Tips Mensimulasikan CodeIgniter URL di Laravel (Bagian 4) - Reroute

Category: Web DevelopmentDate:
Sunday, 24 Mar 2019


Kali ini, saya akan membahas tips agar kita bisa mensimulasikan codeigniter url di laravel tanpa perlu menambahkan __invoke() tiap kali membuat controller baru. Pertama, buat controller baru dengan nama Reroute (kalau Anda mau menggunakan nama lain silahkan saja).
[php]
namespace App\Http\Controllers;

use Illuminate\Http\Request;

class Reroute extends Controller
{

public function __invoke($method_name, $param='')
{
return $this->{$method_name}($param);
}

}
[/php]


Kemudian, tambahan route:
[php]
Route::get('reroute/{method_name}/{param?}', 'Reroute');
[/php]


Kali ini saya gunakan setting route dasar, kalau Anda ingin mengadakan modifikasi dan penyesuaian silahkan merujuk pada tulisan Tips Mensimulasikan CodeIgniter URL di Laravel (Bagian 3).

Selanjutnya, buat lagi controller dengan nama CobaController seperti ini
[php]
namespace App\Http\Controllers;

use Illuminate\Http\Request;

class CobaController extends Reroute
{

function test($param='')
{
return 'test '.$param;
}

function hello($param='')
{
return 'hello '.$param;
}

}
[/php]


Kemudian, tambahan route:
[php]
Route::get('coba/{method_name}/{param?}', 'CobaController');
[/php]


Perhatikan perbedaannya bahwa kali ini, CobaController tidak meng-extends Controller tapi Reroute. Silahkan buka web browser dan ketikkan http://contoh-nama-domain.com/coba/hello/123 untuk mengecek apakah berhasil atau tidak. Kalau muncul tulisan "hello 123" maka berarti berhasil.

Jadi, tiap kali menambahkan controller baru cukup meng-extends reroute dan tambahkan route yang sesuai dan tiap method yang ditambahkan pun otomatis bisa digunakan sehingga laravel bisa menggunakan pola [controller_name]/[method] layaknya CodeIgniter secara dinamis.


No comments...
>> Comments closed. <<