[英]Getting null ObjectID from MongoDB using findByID in javascript - newbie
我是 javascript 和 mongo 的新手,並試圖使用 id 在我的 MongoDB 數據庫集合中找到一門課程,但得到的是 null。 你能幫我解決這個問題嗎?
注意:我使用的是 MacBook。 這是我正在嘗試做的一件非常基本的事情。 我可以使用.find() 獲取 object 但 findByID(id) 似乎對我不起作用。 我錯過了什么? 讓我知道是否需要更多細節。
編輯:一個奇怪的觀察,參考圖像。 對於第一個,我找不到它或使用 id 更新它,但我可以找到並更新第二個。 第一個使用 json 文件插入數據庫,第二個使用 javascript 中的.save() 插入。
PFB我的代碼:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/mongo-exercise', { useNewUrlParser: true, useUnifiedTopology: true })
.then(() => console.log('Connected to mongo-exercise database.'))
.catch(err => console.log('Could not connect to mongo-exercise database.', err));
// Create the schema
const schema = new mongoose.Schema({
name: String,
author: String,
price: Number,
tags: [String],
isPublished: Boolean
});
// Call the schema
const Course = mongoose.model('course', schema);
async function updateCourse(id) {
try {
const course = await Course
.findById(id);
console.log('Course is ', course);
}
catch (err) {
console.log('Solution failed: ', err.message);
throw error
}
}
updateCourse("5a68fdf95db93f6477053ddd");
[ ]
發生在我身上。使用指南針導入時,只需取消選擇 _Id 屬性作為其字符串。 當導入 mongodb 驅動程序時,將放入一個新的 object _id 和可以查詢的 objectid。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.