這是我的架構
const ElectionScheme= new mongoose.Schema({
id:{
type:Number
},
description:{
type:String
},
startDate:{
type:Date
},
closeDate:{
type:Date
},
certificatesMaxAmount:{
type:Number
},
voters:[{
idCard:Number,
credential:String,
names: String,
surnames:String,
gender:String,
birthDate:Date,
department:String,
idCircuit:Number,
phone:Number,
mail:String,
votesCount:Number,
certificatesCount:Number
}]
})
您好,我正在嘗試通過從模型中的陣列中過濾他們的身份證來提取單個選??民,但我總是得到完整的選民名單。我試試這個
const Elections = require("../models/Elections");
Elections.findOne({ id: voteData.idElection,"voters.idCard":voteData.idCard, "candidates.idCard": voteData.idCandidate})
.select(["candidates", "voters", "electionMode"])
.lean().then(election => {...
}
在此處輸入代碼
uj5u.com熱心網友回復:
我不知道 發生了什么,但這是過濾/投影從陣列"candidates"
回傳的內容的一種方法。"voters"
db.collection.find({
"id": 3423423, // <-- voteData.idElection
"voters.idCard": 345 // <-- voteData.idCard
},
{
"voters.$": 1
})
嘗試使用mongoplayground.net上的虛構資料。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/490187.html
標籤:javascript 节点.js mongodb 猫鼬 猫鼬模式
上一篇:如何對資料庫進行一次查詢以查找介于、之前、之后和可分頁之間的日期?
下一篇:在模板內渲染資料庫檔案,EJS