0
我正在用貓鼬的計數查詢到MongoDB的,就像這樣:的MongoDB與貓鼬超時時,沒有記錄存在
Question.count({$and: [{"tags.text": query},{"tags.text": "Diagram"}]}).execAsync()
.then(respondWithResult(res))
.catch(handleError(res));
我需要算多少記錄有「圖」標籤,另一個一個我通過參數獲得。
當結果大於0時,它可以正常工作,但如果沒有選擇記錄,它只會超時而沒有響應。我使用CLI嘗試相同的查詢和它的作品般的魅力:
> db.questions.find({$and: [{"tags.text": "Diagram"}, {"tags.text": "tag3"} ]}).count()
0
有什麼想法?我完全絕望。
**編輯**
我試了好東西,問題是在respondWithResult功能。
function respondWithResult(res, statusCode) {
statusCode = statusCode || 200;
return function(entity) {
if(entity) {
return res.status(statusCode).json(entity);
}
return null;
};
}
有超時發生的地方。只有在計數的情況下,使用查找功能才能正常工作。
很好聽,你是歡迎的。 – cubbuk