Controller mengelompokkan perilaku HTTP yang saling berkaitan. Simpan controller aplikasi di app/Http/Controllers.
Membuat controller
Gunakan Artisan agar nama file dan class mengikuti konvensi:
node artisan make:controller User
Perintah tersebut membuat app/Http/Controllers/UserController.js.
export class UserController {
index(request, response) {
return response.json({ users: [] });
}
}
Mendaftarkan controller
Handler controller ditulis sebagai pasangan class dan nama method.
import { UserController } from '../app/Http/Controllers/UserController.js';
export default function routes(Route) {
Route.get('/users', [UserController, 'index']);
}
Container Lanjit membuat instance controller dan menyelesaikan dependency constructor yang terdaftar.
Resource controller
Untuk resource CRUD, implementasikan method konvensional berikut:
| Method | Tanggung jawab |
|---|---|
index |
Menampilkan daftar resource |
create |
Menampilkan form pembuatan |
store |
Menyimpan resource baru |
show |
Menampilkan satu resource |
edit |
Menampilkan form edit |
update |
Memperbarui resource |
destroy |
Menghapus resource |
Kemudian daftarkan seluruh route dengan Route.resource('posts', PostController).