下面是我按城市查询搜索的代码。我的帖子中找不到我>我需要能够搜索特定城市并获取与该城市匹配的字段的所有记录。例如,如果城市位于市中心,那么我想要城市的所有记录
service: get-soundcloud-tracks
provider:
name: aws
runtime: nodejs8.10
profile: home
functions:
hello:
handler: handler.hello
events:
- http:
path: users/create
method: get
cors: true
答案 0 :(得分:1)
这是一种更好的方法;
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()
将完成工作。我看不到您需要选择_id
,如果您不希望选择-_id
,则只用_id
指定,但默认情况下选择了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()
。
如果您使用的是以下内容,则下面是Mongoose中有效查询的列表
@EntityView(DrawingRelease.class)
public interface DrawingReleaseDTO
int getDrawingReleaseID();
DrawingReleaseTypeDTO getReleaseType();
@EntityView(DrawingReleaseType.class)
interface DrawingReleaseTypeDTO {
boolean isCustom1();
}
}
检查https://mongoosejs.com/docs/queries.html以获得有关查询的更多信息
我希望这对您有帮助
答案 1 :(得分:0)
您快到了。只需指定您的查询,就可以了
https://mongoosejs.com/docs/api.html#model_Model.find
router.get("/search", (req, res, next) =>{
const city = req.query.city;
Facility.findAll({propertyName: city})
.select('name type mobile price streetName city state _id')
.exec()
.then(docs => {
console.log("From database", docs);
if (docs) {
res.status(200).json({
facility: docs
});
} else {
res
.status(404)
.json({ message: "No valid entry found for provided City" });
}
})
.catch(err => {
console.log(err);
res.status(500).json({ error: err });
});
});
答案 2 :(得分:0)
下面是工作代码:
router.get('/search', (req, res) => {
const city = req.query.city
Facility.find({city})
.select('name type mobile price streetName city state')
.exec((err, docs) => {
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({
count: docs.length,
facility: docs
});
})
});