我正在嘗試使用 findOne 的 name 屬性從我的集合中獲取用戶,但它回傳 undefined 而我的用戶在資料庫中。
這是我的架構:
var schema = new mongoose.Schema({
name: {
type: String,
required: [true, "Please enter a name"],
maxlength: 32,
},
password: {
type: String,
required: true,
minlength: [6, "Password must be at least 6 characters"],
},
email: {
type: String,
required: true,
unique: true,
},
isAdmin: {
type: Boolean,
default: false,
},
});
const Userdb = mongoose.model("userdb", schema);
module.exports = Userdb;
這就是我試圖讓我的用戶:
const name = req.body.name;
const password = req.body.password;
const user = Userdb.findOne({name: name});
// console.log(user.name, user.password);
if (user.name === undefined)
return res.status(400).send({ message: "User not found" });
const dbpassword = user.password;
我的 console.log 回傳 undefined
在資料庫中:

我的郵遞員發帖請求:

uj5u.com熱心網友回復:
檢查您的正文請求,并確保您在這種情況下在 db 集合中有資料。如果收集的資料與查詢 mongoose 不匹配,則回傳未定義的資料。
- 以原始模式發送請求并設定 Json 型別以發送請求
像這樣
你應該創建異步函式并使用等待獲取資料然后記錄
const user = await Userdb.findOne({name: name});
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/457939.html
標籤:javascript 节点.js mongodb 表示 邮差
上一篇:如何使UIActivityViewController基于動態陣列動態排除專案?
下一篇:輸入Mongoose驗證函式
