我有一个存储在MongoDB数据库中的文档集合,如下所示:
[
{
_id: 5fe72e02b237503088b8889b,
code: '000001403',
name: 'John',
date: 2018-12-01T21:00:00.000Z,
__v: 1
},
{
_id: 5fe72e02b237503088b8889c,
code: '000001404',
name: 'Michael',
date: 2018-12-01T21:00:00.000Z,
__v: 1
}
]
我需要从集合中的所有文档中移除“代码”字段,并保留文档,即需要如下结果:
[
{
_id: 5fe72e02b237503088b8889b,
name: 'John',
date: 2018-12-01T21:00:00.000Z,
__v: 1
},
{
_id: 5fe72e02b237503088b8889c,
name: 'Michael',
date: 2018-12-01T21:00:00.000Z,
__v: 1
}
]
我还从模型中删除了字段:
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const ItemSchema = new Schema({
// code: String,
name: String,
date: {
type: Date,
default: Date.now
},
});
module.exports = mongoose.model('Item', ItemSchema);
我不知道在这种情况下是否可以使用
谢了。
我试过这样做,但不幸的是于事无补。集合中没有任何变化,尽管其他更新操作可以工作。
app.get('/fourth', async (req,res) => {
try {
const items = await Item.find();
for (let x = 0; x < 10; x++) {
items[x].code = null;
delete items[x].code;
console.log(x + '\n');
await items[x].save();
}
console.log('parsed');
res.json('parsed');
} catch (err) {
res.json({ message: err });
}
});
这是对第一条评论的回答。