nodejs mongodb 实现简易留言板

2016-06-29 15:49:20

 一个朋友问了一下mongodb的一些操作问题  我就做了下面这个简单的留言板  给他做一个实例 希望能帮助到他

49056A09-13EA-4098-ADE6-D957DEDBA420.png

   express 的框架就不说了 express的问题 请移步nodejs之express

   这次主要说说基本的mongdb的操作

  

  首先 创建schema

var mongoose = require("mongoose");
mongoose.connect('mongodb://127.0.0.1/move');

var MovieSchema = new mongoose.Schema({
    message:String,
    state:Number,
    username:String,
    meta : {
        createAt : {
            type : Date ,
            default : Date.now()
        },
        updateAt :{
            type : Date ,
            default : Date.now()
        }
    }
});

module.exports = {
    move : mongoose.model('move', MovieSchema ,'move'),
};
数据添加

var db=require('./db') ;

var Q=require('q') ;

function  findall(args)
{
    var defer= Q.defer() ;
    db.move.find(args, function (err, result) {
            if(err)
            {
                defer.reject(err)
            }
            else
            {
                defer.resolve(result)
            }
        }
    )

    return defer.promise ;
}


function  create(args) {
    var defer= Q.defer() ;
    db.move.create(args, function (err, result) {
            if(err)
            {
                defer.reject(err)
            }
            else
            {
                defer.resolve(result)
            }
        }
    )

    return defer.promise ;

}

exports.create=create ;
exports.findall=findall ;

pagemessage层处理

var move = require('./mongo/move');
function createmessage(req, res) {

    var args = {
        message: req.query.m,
        state: 1
    }
    var ret = {};

    move.create(args).then(function (data) {
        ret.code = 1;
        res.redirect("/")
    }).catch(function (err) {
            console.log(err);
            ret.code = -1;
            res.send(ret)
        }
    )

}
exports.createmessage=createmessage ;


源代码 请查阅

https://coding.net/u/niefengjun/p/demo/git


你打算打赏多少钱呢?

打赏
(微信扫一扫)