簡體   English   中英

如何在 mongoose 的另一個集合中找到一個集合

[英]How to find a collection inside another collection in mongoose

我試圖刪除一個集合內的特定文檔,該文檔也在另一個集合內。 例如:我有一個名為 todoTitle 的集合,其中有一個名為 todo 的另一個集合的數組,我想找到該數組內的特定 todo 集合並將其刪除。 我試圖使用 findOneAndDelete 但它不起作用。 這是代碼:

const TodoSchema = new mongoose.Schema({
    name:  String,
})
const todo = mongoose.model('todo', TodoSchema)

const TodoTitleSchema = new mongoose.Schema({
    title: String,
    content: [TodoSchema],
})
const todoTitle = mongoose.model('todoTitle', TodoTitleSchema)

app.post('/removeTodo',(req,res)=>{
    let todoID = req.body.removeTodo;
    todoTitle.findOneAndDelete({content:[{_id: todoID}]}, (err, foundtodo)=>{
        console.log(foundtodo);
        if(err){
            console.log(err)
        }
        res.redirect('/');
    })
})

您好,所以我終於想通了,我不得不編寫以下代碼:

todoTitle.findOneAndUpdate({_id: listID}, {$pull: {content: {_id: todoID}}}, (err, foundtodo)=>{
        if(err){
            console.log(err)
        }
    })

並且該錯誤實際上是由未定義的 ID 引起的,所以我修復了該部分,現在它可以工作了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM