Saya mendapat ralat ini apabila saya cuba mendapatkan dokumen daripada mongodb Saya menggunakan mongo buat kali pertama, alangkah baiknya jika sesiapa boleh membantu saya
const express = require("express"); const { ObjectId } = require("mongodb"); const { connectToDb, getDb } = require("./db"); const app = express(); //db connection let db; connectToDb((err) => { if (!err) { app.listen(3000, () => { console.log("App listerning on Port :3000"); }); db = getDb(); } }); //route connections app.get("/books", (req, res) => { let books = []; db.collection("books") .find() .sort({ author: 1 }) .forEach((book) => books.push(book)) .then(() => { res.status(200).json(books); }) .catch(() => { res.status(500).json({ error: "Couldn't fetch the documents" }); }); }); app.get("/books/:id", (req, res) => { db.collection("books") .findOne({ _id: ObjectId("req.params.id") }) .then((doc) => { res.status(200).json(doc); }) .catch((err) => { res.status(500).json({ error: "could not fetch the document" }); }); });
Nak tahu cara hilangkan ralat ini dan puncanya
Cuba kod di bawah, ia berfungsi untuk saya, cuma simpan ObjectId() baharu dalam pembolehubah (id) dan kemudian akses pembolehubah di dalam kaedah seperti yang ditunjukkan di bawah