【发布时间】:2018-05-29 23:42:16
【问题描述】:
我是 MEAN 堆栈的新手。从我的一个 API 中,我设法得到以下 JSON 作为输出。
GET方法:
router.get('/', function (req, res, next) {
var decoded = jwt.decode(req.query.token);
User.findById(decoded.user._id, function (err, user) {
if (err) {
return res.status(500).json({
title: 'An error occurred',
error: err
});
}
Treatment.find().sort('_id').limit(3)
.exec(function (err, treatments) {
if (err) {
return res.status(500).json({
title: 'An error occurred!',
error: err
});
}
res.status(200).json({
message: 'Success',
obj: treatments
});
});
});
});
JSON:
{
"message": "Success",
"obj": [
{
"_id": "5a3407b5b49aa6268419755f",
"patient": "5a3393ff963e821dc0f66598",
"t_date": "2017-12-15T17:30:45.365Z",
"symptoms": "fever,joint pain,headache,rash",
"signs": "changing levels of estrogen,dryness,nail breaks",
"review": ""
},
{
"_id": "5a3407cab49aa62684197562",
"patient": "5a3393ff963e821dc0f66598",
"t_date": "2017-12-15T17:35:45.365Z",
"symptoms": "fever,headache",
"signs": "nail breaks",
"review": ""
}
]
}
问题: 我需要计算在给定日期范围内出现了多少次症状,例如我附在here 上的表格。我如何计算发生次数? (mongoDB中的症状字段类型是字符串,症状可以变化)
编辑 我在客户端没有任何列表/下拉列表。它只是一个文本框。
【问题讨论】:
-
您在客户端有
symptoms列表吗?您可以split您的字符串然后与列表进行比较以获取计数? -
不,我没有清单。它只是一个文本框。客户可以输入任何内容。
-
那么客户端可以输入的内容就不一致了。你可能想实现一些更高效的东西,并且使用 Angular 很容易
标签: mongodb mongoose mean-stack