我有一个集合。在这个集合中,我只有一个这样的文档:
_id:
emails: []
我想删除电子邮件数组中的值。
我的代码在/models/askForReferral.js下:
const mongoose = require('mongoose');
const WaitingForReferral = mongoose.model('WaitingForReferral', new mongoose.Schema({
emails: []
}));
exports.WaitingForReferral = WaitingForReferral;
我在/routes/referralEmail.js下的代码:
const { WaitingForReferral } = require('../models/askForReferral');
const express = require('express');
const router = express.Router();
router.post('/', async (req, res) => {
WaitingForReferral.update(
{ },
{ $unset: { emails: "" } }
)
});
当我运行我的代码时,它运行没有错误,但电子邮件数组没有清空。
任何的想法?
使用$set
运算符和空白数组[]
以及mongoose查询返回承诺你需要使用await
来执行它
await WaitingForReferral.update(
{ },
{ $set: { emails: [] } }
)