Prefix & Resource Routing
Penjelasan
$routes->resources() men-generate route CRUD standar (index, add, edit, view, delete) sekaligus dalam satu baris, mirip Route::resource() di Laravel. CakePHP juga punya konsep "prefix" routing untuk mengelompokkan route (mis. semua route admin di bawah /admin/... dan otomatis diarahkan ke Controller di namespace Controller\Admin).
Contoh Konsep
<?php
// config/routes.php
$routes->resources('Produk');
// Setara dengan mendaftarkan manual:
// GET /produk -> index
// GET /produk/add -> add
// POST /produk -> add
// GET /produk/{id} -> view
// GET /produk/{id}/edit -> edit
// POST /produk/{id}/edit -> edit
// POST /produk/{id}/delete -> delete
// Prefix routing:
$routes->prefix('Admin', function ($routes) {
$routes->resources('Produk'); // otomatis mengarah ke Controller\Admin\ProdukController
});
Praktikum
Tulis satu baris $routes->resources() untuk resource Artikel. Bungkus juga dengan $routes->prefix('Admin', ...) supaya ada versi /admin/artikel yang mengarah ke Controller\Admin\ArtikelController.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Penamaan action resource CakePHP (add, edit, view, delete) BEDA dari Laravel (create/store, edit/update, show, destroy) — CakePHP tidak memisahkan action "tampilkan form" dan "proses submit" jadi dua action terpisah untuk create/edit, keduanya digabung dalam satu action add()/edit() yang mengecek $this->request->is('post').