Javascript nodejs mongodb未基于id删除
你能帮我查一下这个密码吗。当我运行此url时,此代码没有从MongoDB中删除值: 我得到以下响应:Javascript nodejs mongodb未基于id删除,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,你能帮我查一下这个密码吗。当我运行此url时,此代码没有从MongoDB中删除值: 我得到以下响应:{“lastErrorObject”:{“n”:0},“value”:null,“ok”:1},但不删除 app.get('/delete/:id', (req, res) => { var uid = req.params.id; db.collection('quotes').findOneAndDelete({'_id': uid}, (err, result) =>
{“lastErrorObject”:{“n”:0},“value”:null,“ok”:1}
,但不删除
app.get('/delete/:id', (req, res) => {
var uid = req.params.id;
db.collection('quotes').findOneAndDelete({'_id': uid}, (err, result) => {
if (err) return res.send(500, err);
res.send(result);
});
});
此响应表示您的查询正在正确执行“OK”:1,但find查询无法找到任何要删除它的文档
因此,在使用“
findOneAndDelete
”之前,请仅使用“findOne
”并记录响应以检查您是否有该文档。此响应意味着,您的查询正在正确执行“OK”:1,但查找查询无法找到任何文档来删除它
因此,在使用“
findOneAndDelete
”之前,请仅使用“findOne
”并记录响应以检查您是否使用该文档。在MongoDB中,您可以使用ObjectId
构造函数而不是ObjectId的字符串来查询文档id(\u id
)。因此,查询需要是:{'u id':ObjectId(uid)}
例子
暗示
在MongoDB中,您可以使用
ObjectId
构造函数而不是ObjectId的字符串来查询文档id(\u id
)。因此,查询需要是:{'u id':ObjectId(uid)}
例子
暗示
对。谢谢你,我想我哪里做错了。请参阅下面的正确答案
var ObjectId = require('mongodb').ObjectID;
app.get('/delete/:id', (req, res) => {
var uid = req.params.id;
db.collection('quotes').findOneAndDelete({'_id': ObjectId(uid) }, (err, result) => {
if (err) return res.send(500, err);
res.send(result);
});
});
对。谢谢你,我想我哪里做错了。请参阅下面的正确答案
var ObjectId = require('mongodb').ObjectID;
app.get('/delete/:id', (req, res) => {
var uid = req.params.id;
db.collection('quotes').findOneAndDelete({'_id': ObjectId(uid) }, (err, result) => {
if (err) return res.send(500, err);
res.send(result);
});
});
db.collection('quotes').find({''u id':uid})
是否有任何结果?根据文档根据筛选和排序条件删除单个文档,并返回删除的文档
。您得到的结果不正确。我认为您在查询对象中缺少objectId:{''u id':objectId(uid)}
@cbass请回答,这很可能是正确的原因=D@robertklep完成!db.collection('quotes').find({''u id':uid})
是否有任何结果?根据文档根据筛选和排序条件删除单个文档,并返回删除的文档
。您得到的结果不正确。我认为您在查询对象中缺少objectId:{''u id':objectId(uid)}
@cbass请回答,这很可能是正确的原因=D@robertklep完成!谢谢,现在工作正常了。添加var ObjectId=require('mongodb')后。ObjectId;还有{uid':ObjectId(uid)}谢谢,现在它工作正常了。添加var ObjectId=require('mongodb')后。ObjectId;和{u id':ObjectId(uid)}
var ObjectId = require('mongodb').ObjectID;
app.get('/delete/:id', (req, res) => {
var uid = req.params.id;
db.collection('quotes').findOneAndDelete({'_id': ObjectId(uid) }, (err, result) => {
if (err) return res.send(500, err);
res.send(result);
});
});