i (am) Blogger and U?

from X-periment to X-perience

Template Toko Online: Shopper Variant

SHOPPER-Variant adalah HTML template (menggunakan Bootstrap 3.3.6) yang ditujukan untuk toko online. Template ini terdiri dari 6 halaman siap pakai yaitu home, product lists, shopping c [...]

Aplikasi Web: Online Shop PRO 1

Toko Online Pro 1 adalah paket full-features aplikasi toko online yang dapat digunakan untuk menjalankan bisnis Anda secara online. Aplikasi ini memiliki fitur-fitur unggulan dan lengk [...]

Aplikasi Web: URL Shortener Complete 2

URL Shortener Complete 2 adalah aplikasi yang membantu Anda untuk menjalankan situs/web yang memiliki fasilitas URL shortener. Pemendek URL sesuai namanya berfungsi untuk memangkas alam [...]

Aplikasi Web: Pre-Order Online Shop

Pre-Order Online Shop adalah paket full-features aplikasi toko online yang dapat digunakan untuk menjalankan bisnis Anda secara online. Fasilitas unggulan yang terdapat pada aplikasi in [...]

Aplikasi Web: Forum Mirip Twitter

Aplikasi ini merupakan aplikasi layaknya forum pada umumnya. Hal spesial dari aplikasi ini adalah adanya tambahan yang mirip dengan Twitter. Fitur-fitur yang dimiliki antara lain: foll [...]

Anime/Movie Community Sharing (FullCustom)

Produk ini adalah aplikasi web full-custom yang diperuntukkan bagi Anda yang ingin membuat situs/web yang dapat menampilkan anime/movie dan dapat ditonton oleh para pengunjung. Video an [...]

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. <<