仅通过第一个属性删除文档

时间:2019-01-03 16:01:41

标签: javascript node.js mongodb

我正在尝试通过对象中的第一个属性从MongoDB中删除文档。我将如何定义myquery变量? req.body.photon.id包含我要删除的文档的字符串。

app.post('/deletephoton',function deletePhoton(req,res){
  console.log(req.body.photon.id)
  MongoClient.connect(url, function(err, db) {
    if (err) throw err;
    var dbo = db.db("mydb");
    var myquery =  req.body.photon.id;
    dbo.collection("probes").deleteMany(myquery, function(err,obj) 
     {
      if (err) throw err;
      console.log(obj.result.n + " document(s) deleted");
      db.close();
    });
  });
})

数据 {"35002f000f47363333343437":"photon1,0,1546529824,1546529824,5419571,1.151750,1.308505,0.880203,86.42,66.05,75.04,4321.222168,346.858582,14135.343750,39.50C,103.10F,0,0,0,0,0,0,0,9,0,5,0,226,62,0,654","published":"2019-01-03T15:37:14.861Z"},{"330045000f47363336383437":"Photon4,0,1546529881,1546529881,657931,0.948100,1.376440,0.688806,76.88,55.85,81.08,24463.919922,307.444458,5717.383789,37.50C,99.50F,0,0,0,0,0,0,0,27,0,38,0,472,141,0,65","published":"2019-01-03T15:38:16.974Z"},{"35002f000f47363333343437":"photon1,0,1546529901,1546529901,5496166,1.153366,1.309739,0.880608,86.47,66.02,74.98,4319.191895,346.464661,14046.888672,39.00C,102.20F,0,0,0,0,0,0,0,48,0,44,0,21,92,0,65","published":"2019-01-03T15:38:21.356Z"},{"330045000f47363336383437":"Photon4,0,1546529986,1546529986,763657,0.945928,1.375544,0.687676,76.78,55.82,81.17,26526.273438,330.111115,5860.575684,38.00C,100.40F,0,0,0,0,0,0,0,11,0,31,0,139,465,0,6","published":"2019-01-03T15:40:17.786Z"},{"35002f000f47363333343437":"photon1,0,1546529977,1546529977,5572760,1.148823,1.306892,0.879050,86.31,66.04,75.13,4322.939453,346.565643,14356.383789,39.50C,103.10F,0,0,0,0,0,0,0,35,0,25,0,371,101,0,","published":"2019-01-03T15:40:23.340Z"}]

1 个答案:

答案 0 :(得分:0)

所以我最终解决这个问题的方法是定义var myquery = {[req.body.photon.id]: /^/ };

相关问题