码迷,mamicode.com
首页 > 其他好文 > 详细

一个简单的blog系统(十) 增加pv统计和留言统计

时间:2016-03-21 22:55:31      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:

1. 现在我们来给每篇文章增加pv统计和留言统计功能。

  假设:在主页、用户也和文章页均可以显示pv统计和留言统计

首先,打开post.js,修改代码如下所示:

//要存入数据库的文档
    var post = {
        name: this.name,
        time: time,
        title: this.title,
        post: this.post,
        tags: this.tags,
        comments: [],
        pv: 0
    };

然后,修改Post.getOne()为如下所示:

//获取一篇文章,根据用户名,发表日期以及文章名精确获取一篇文章
Post.getOne = function(name, day, title, 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);
              }
              //根据用户名、发表日期及文章名进行查询
              collection.findOne({
                "name": name,
                "time.day": day,
                "title": title
              }, function (err, doc) {
                if (err) {
                      mongodb.close();
                      return callback(err);
                }
                if (doc) {
                  //每访问 1 次,pv 值增加 1
                      collection.update({
                        "name": name,
                        "time.day": day,
                        "title": title
                      }, {
                        $inc: {"pv": 1}
                      }, function (err) {
                        mongodb.close();
                        if (err) {
                              return callback(err);
                        }
                      });
                      //解析 markdown 为 html
                    doc.post = markdown.toHTML(doc.post);
                    doc.comments.forEach(function (comment) {
                    comment.content = markdown.toHTML(comment.content);
                    });
                    callback(null, doc);//返回查询的一篇文章
                }
              });
        });
      });
};

最后,修改index.ejs、user.ejs、article.ejs,在<p><%- post.post %>后面修改

<span class=‘glyphicon glyphicon-comment‘ style="padding:0 10px;">评论:<%= post.comments.length %></span>
<span class="glyphicon glyphicon-share-alt">阅读:<%= post.pv %></span>

至此,我们就给博客增加了pv统计和留言统计。

如下代码:

 

一个简单的blog系统(十) 增加pv统计和留言统计

标签:

原文地址:http://www.cnblogs.com/yuity/p/5304137.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!