javascript - 如何让 pull 与 mongoose 和 mongodb 一起正常工作?

标签 javascript mongodb express mongoose

我正在尝试从模型内部的数组中提取一个对象。但是我无法让它正常工作。我已经检查了我的查询参数,所以我知道它们正在输出正确的值。任何帮助将不胜感激!!

架构:

const mongoose = require('mongoose');
const { Schema } = mongoose;

const collectionSchema = new Schema({
    type: String,
    name: String,
    id: String,
    gamesCollected: [
        {
            id: Number,
            name: String,
            summary: String,
            first_release_date: Number,
            screenshots: [
                {
                    url: String,
                    couldinary_id: String,
                    width: Number,
                    height: Number
                }
            ],
            cover: {
                url: String,
                couldinary_id: String,
                width: Number,
                height: Number
            },
            platfroms: [
                Number
            ]

        }
    ]
});

mongoose.model('collection', collectionSchema);

路线:

router.delete('/delete_game', (req, res) => {
    Collection.findOneAndUpdate({_id: req.query.collectionID}, {$pull: 
    {gamesCollected: {_id: req.query.id}}});
    res.end();
});

最佳答案

请将 req.query 替换为 req.body

router.delete('/delete_game', (req, res) => {
    Collection.findOneAndUpdate({_id: req.body.collectionID}, {$pull: 
    {gamesCollected: {_id: req.body.id}}});
    res.end();
});

曾经引用过类似问题How to get parameter for delete request in express node js

关于javascript - 如何让 pull 与 mongoose 和 mongodb 一起正常工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53274585/

相关文章:

java - MongoDB 日期时间插入没有从 java 完美发生

Mongodb findoneandupdate 与聚合管道

java - 使用 Mongodb 进行一对多映射

javascript - 将自定义错误消息从 Express JS 发送到 Backbone

javascript - 使用 npm install 安装 glup 时出错

javascript - Eloquent JS : Chessboard – why is first row misaligned?

javascript - 如何为 express.js 应用程序而不是 React 应用程序设置 webpack?

javascript - 前端和后端定时器/事件同步?

javascript - 单个容器上的多个下拉列表不会相互干扰

javascript - 数据库变化SignalR实时反馈