使用MongoDB和Node.js的Mongoose驱动程序,我想限制我必须在API中重复的代码量。
而不是做这样的事情:
var limit = req.query.limit || -1;
if(limit === 1){
Model.findOne({})...
}
else{
Model.find({})...
}
最好只做:
var limit = req.query.limit || -1;
Model.find({}).limit(limit);
所以我有两个问题:
(1)使用limit(1)是否与findOne()具有相同的效果,因为它是一个更有效的搜索,因为查询一找到它的第一个匹配就返回?
(2)limit(-1)或limit(0)是否具有创建无限制搜索的效果?因为这样可以避免重复代码。
1条答案
按热度按时间q5lcpyga1#
limit(1)vs findOne()
limit(-1),limit(0)
http://docs.mongodb.org/manual/reference/method/cursor.limit/