mongoose如何取得全部结果数量并只提取部分结果 - 转载,待试验
2017-11-23 20:46
399 查看
https://segmentfault.com/q/1010000002466535
如题,在跟着这个课程,写一个博客系统,不过我想把里面用mongodb写的部分改成mongoose的方法。取文章这里遇到了些问题, 原文是这样写的。
获得总数是用来判断是否为最后一页的,但是我用mongoose写的话不知道该如何获取查询到查询结果的总数,写到这样不知道如何写了
求大神指点下。。。
如题,在跟着这个课程,写一个博客系统,不过我想把里面用mongodb写的部分改成mongoose的方法。取文章这里遇到了些问题, 原文是这样写的。
Post.getTen = function(name, page, callback) { //打开数据库 mongodb.open(function (err, db) { if (err) { return callback(err); } //读取 posts 集合 db.collection('posts', function (err, collection) { if (err) { mongodb.close(); return callback(err); } var query = {}; if (name) { query.name = name; } //使用 count 返回特定查询的文档数 total collection.count(query, function (err, total) { //根据 query 对象查询,并跳过前 (page-1)*10 个结果,返回之后的 10 个结果 collection.find(query, { skip: (page - 1)*10, limit: 10 }).sort({ time: -1 }).toArray(function (err, docs) { mongodb.close(); if (err) { return callback(err); } //解析 markdown 为 html docs.forEach(function (doc) { doc.post = markdown.toHTML(doc.post); }); callback(null, docs, total); }); }); }); }); };
获得总数是用来判断是否为最后一页的,但是我用mongoose写的话不知道该如何获取查询到查询结果的总数,写到这样不知道如何写了
Post.getFive = function(name,page,callback){ var querystr = {}; if(name){ querystr.name = name; } var query = Post.find(querystr).skip((page-1)*5).limit(5); query.sort({time:-1}); query.exec(function(err,results){ if(err){ console.log(err); } else{ results.forEach(function (doc) { doc.post = markdown.toHTML(doc.post); }); console.log(total); callback(null, results, total); } }) }
求大神指点下。。。
相关文章推荐
- ASP.NET 如何取得 Request URL 的各个部分 (转载)
- 转载 ASP.NET中如何取得Request URL的各个部分
- windows平台 vs2005 boost库安装编译(文中绿色部分是自己试验的结果)
- 转载:C#如何实现把word文档内的图片提取出来
- 王爽老师 汇编语言 研究试验5 函数如何接收不定数量的参数
- JMeter 如何把上一个请求的结果作为下一个请求的参数 —— 使用正则提取器
- Java JDBC里如何取得Oracle存储过程返回的动态结果集
- [部分转载] 试验base64编码 urlencode编码
- 转载:探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页
- 【转载】MP4文件数据结构以及提取部分信息的代码
- 如何提取PDF文件中的部分页面内容
- ASP.NET 如何取得 Request URL 的各個部分
- 【转载】关于如何提取Exe文件中PPT源文件的几种方法
- ASP.NET 如何取得 Request URL 的各个部分
- jq 获取元素的宽度时,如何取得小数部分
- ASP.NET 如何取得 Request URL 的各個部分
- 如何取得datetime的日期部分?
- ASP.NET 如何取得 Request URL 的各个部分
- ASP.NET 如何取得 Request URL 的各個部分
- 转载:C程序中如何获取命令执行的结果