perbaikan pencarian pada fitur program bantuan#1599
Merged
Conversation
|
🔄 AI PR Review sedang antri di server...
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request: Fix Error Pencarian pada Fitur Program Bantuan
Deskripsi
Memperbaiki error SQL
Column not found: 1054 Unknown column 'das_program.desa' in 'where clause'yang terjadi saat user melakukan pencarian pada DataTable program bantuan. Error ini disebabkan oleh konfigurasi kolom DataTable yang salah pada kolom "Desa".Perubahan yang dilakukan:
Mengubah
namekolom DataTable dari'desa'menjadi'desa.nama': Kolom "Desa" pada DataTable dikonfigurasi denganname: 'desa', yang menyebabkan Laravel Datatables menggenerasi query SQL dengandas_program.desa. Padahal kolomdesatidak ada di tabeldas_program— yang ada adalahdesa_id(foreign key) dan nama desa tersimpan di tabel terpisah (data_desa) melalui relationship.Menambahkan
searchable: falsepada kolom "Desa": Kolom ini tidak perlu bisa dicari secara manual karena filtering desa sudah ditangani oleh dropdown filter (<select id="list_desa">) di atas tabel.Alasan perubahan:
Root cause: DataTable dikonfigurasi dengan
name: 'desa'untuk kolom yang menampilkan nama desa dari relationship. Laravel Datatables menggunakan nilainameini sebagai kolom target saat melakukan pencarian global (search), sehingga menghasilkan queryLOWER(das_program.desa) LIKE %...%yang gagal karena kolom tersebut tidak ada.Kenapa
searchable: false: Filtering berdasarkan desa sudah dilakukan secara terpisah melalui dropdown select2 (#list_desa) yang mengirim parameterdesake server. Tidak ada kebutuhan untuk pencarian teks bebas pada kolom nama desa di DataTable.Dampak perubahan:
desaLangkah untuk mereproduksi (Steps to Reproduce)
Sebelum perbaikan (masalah):
Column not found: 1054 Unknown column 'das_program.desa' in 'where clause'Setelah perbaikan (fix):
Daftar Periksa (Checklist)
Testing
Manual Testing
File yang diubah
resources/views/data/program_bantuan/index.blade.php(1 file, +2 -1)Related Issue