sql >> Database >  >> NoSQL >> MongoDB

hoe een query uit te voeren met een specifiek veld in plaats van id in express js

Hier is een betere manier om het te doen;

router.get('/search', (req, res) => {
  const {city} = req.query
  Facility.find({city})
    .select('name type mobile price streetName city state')
    .exec((err, doc) => {
      if (err) {
        return res.status(500)
          .json({ message: 'error querying cities', error: err });
      }
      if (!docs) {
        return res.status(404)
          .json({ message: 'No valid entry found for provided City' });
      }
      return res.status(200)
        .json({
          facility: docs
        });
    })
})

find() zal het werk doen. Ik zie geen noodzaak voor u om _id te selecteren , specificeer je alleen met -_id als je het niet wilt, maar _id is standaard geselecteerd.

Hieronder vindt u een lijst met geldige zoekopdrachten in Mongoose als u dat gebruikt

Model.deleteMany()
Model.deleteOne()
Model.find()
Model.findById()
Model.findByIdAndDelete()
Model.findByIdAndRemove()
Model.findByIdAndUpdate()
Model.findOne()
Model.findOneAndDelete()
Model.findOneAndRemove()
Model.findOneAndUpdate()
Model.replaceOne()
Model.updateMany()
Model.updateOne()

Controleer https://mongoosejs.com/docs/queries.html voor meer informatie over vragen

Ik hoop dat dit helpt



  1. Moet ik de waarde van Mongo Bean wijzigen wanneer ik deze op een productieserver implementeer?

  2. Tijdsprecisieprobleem bij vergelijking in mongodb-stuurprogramma in Go en mogelijk in een andere taal en andere database

  3. Hoe te converteren van string naar datum datatype?

  4. Lezen van secundaire replicaset in mongodb via javascript