Gou*_*sia 0 mongoose mongodb node.js
我有批量收集的数据,如下所示:
[
{
"_id": "58d21104a2b6940fd99db632",
"username": "58d18698669fd20ea0b81720",
"batchname": "dynamic",
"time": "21:20",
"activityname": "dance",
"eventtype": "demo",
"duration": 50,
"price": "120$",
"__v": 0,
"trainer": [
{
"trainername": "ramu",
"_id": "58d21104a2b6940fd99db633"
}
]
},
{
"_id": "58d226eb5f73f7150ffc3181",
"username": "58d18698669fd20ea0b81721",
"batchname": "spck",
"time": "21:20",
"activityname": "dance",
"eventtype": "demo",
"duration": 50,
"price": "120$",
"__v": 0,
"trainer": []
},
{
"_id": "58d22745079e481533f23bbe",
"username": "58d18698669fd20ea0b81721",
"batchname": "spctygytgyk",
"time": "21:20",
"activityname": "music",
"eventtype": "demo",
"duration": 50,
"price": "120$",
"__v": 0,
"trainer": [
{
"trainername": "siva",
"_id": "58d22745079e481533f23bbf"
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
在那里我想检索其活动名称与url中的参数send匹配的批次的详细信息.我把代码编写为:
batchrouter.route('/activity/:activityName')
.get(Verify.verifyOrdinaryUser,function (req, res, next) {
Batch.find({"activityname":"req.params.activityName"}, function (err, batch) {
if (err) throw err;
res.json(batch);
});
});
Run Code Online (Sandbox Code Playgroud)
在执行路由时,因为localhost:3000/batch/activity/dance它返回一个空数组[].如何修改代码,以便我想在activityname跳舞时检索批次详细信息.我是mongodb和mongoose的新手.请帮我.
您将activityname("req.params.activityName" with quotes)作为字符串而不是实际值传递.将代码更新为以下内容
Batch.find({"activityname":req.params.activityName}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
121 次 |
| 最近记录: |