Kode itu memiliki dua masalah sekaligus:
- penggunaan janji tidak valid, saat berada di dalam
.catch
Anda melakukanreturn result
, bukan itu cara penanganan penolakan janji, Anda harus memberikan penanganan kesalahan, atau membuang kembali / menolak kesalahan. - penggunaan pg-promise
yang tidak valid Perpustakaan. Anda menggunakan metode satu
itu seharusnya menolak ketika apa pun selain 1 catatan dikembalikan, sesuai dokumentasi metode
, dan pada saat yang sama Anda mengatakan
I need to catch if it returns more than one row...
, yang merupakan kontradiksi logis.
Hasilnya adalah sebagai berikut:kueri Anda berhasil dijalankan, dan mengembalikan lebih dari satu catatan, yang pada gilirannya membuat metode satu
tolak, lalu Anda ambil alasan penolakan tersebut dan ubah menjadi alasan yang terselesaikan dengan melakukan return result
. Secara keseluruhan, kode Anda rusak di semua tempat.
Pertama, dengan pg-promise Anda seharusnya menggunakan metode yang tepat, sesuai dengan jumlah catatan yang Anda harapkan kembali, lihat Dasar-dasar .
Dan kemudian tangani .then/.catch
sesuai dengan logika bisnis Anda. Saya tidak bisa lebih spesifik di sini, karena Anda tidak memberikan detail lebih lanjut tentang ini.