Search keyword
Pola umum daftar data dengan filter: baca nomor halaman dari path/URL, ambil query string (kata kunci, sort, kategori, dll.), lalu panggil model lewat useModels. Semua helper di bawah tersedia di NexaController.
pagesIntRequest paramsKeys useModels
Alur singkat (contoh Posting admin)
Halaman indeks posting menggabungkan pagination path, parameter GET, dan method pencarian di model News:
$page = $this->pagesIntRequest();
$requestParams = $this->paramsKeys();
$searchResults = $this->useModels('News', 'search', [
$requestParams['search'],
$requestParams['sort'],
$page,
$requestParams['categori'],
]);
$statisticData = $this->useModels('News', 'percentage', [
$requestParams['search'],
$requestParams['sort'],
$requestParams['categori'],
]);Kunci seperti search, sort, categori mengikuti nama field di form atau URL Anda; model bertanggung jawab menerjemahkan nilai tersebut ke query basis data.
pagesIntRequest()
Memindai RequestUri dan CleanPath dengan pola page/n atau pages/n (regex #page[s]?/(\d+)#). Mengembalikan nomor halaman minimal 1; jika tidak cocok, 1. Cocok dengan URL pagination bertipe …/pages/2.
paramsKeys($keys = null, $safeMode = true)
Mengambil parameter dari query string (getQueryParams()). Pemanggilan tanpa argumen seperti di atas mengembalikan pembungkus SafeParamsArray: akses $requestParams['search'] aman — kunci yang tidak ada di URL menghasilkan string kosong, tanpa notice.
paramsKeys(['search','sort'])— hanya kunci yang disebutkan (tetap aman).paramsKeys('search')— satu nilai string atau''.paramsKeys(null, false)— perilaku mentah (lihat jugaparamsKeysRaw).
useModels($modelPath, $method, array $params = [])
Menjalankan method pada model di folder models (mis. 'News', 'Access/Akun') dengan injeksi controller melalui NexaState. Argumen ketiga adalah array parameter urut untuk search, percentage, atau method lain yang Anda definisikan di model.
Lanjut
Sebelumnya: Pagination. Berikutnya: Array bersarang. Indeks Helper · Dokumentasi · Beranda.