码迷,mamicode.com
首页 > 数据库 > 详细

简单的nodejs + mongodb CRUD

时间:2015-04-23 01:52:39      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

/**
 * Created by Administrator on 2015/4/22.
 */
var mongodb = require(‘./db‘),
    BSON = require(‘mongodb‘).BSONPure;

var User = function (user) {
    this.firstName = user.firstName;
    this.lastName = user.lastName;
};
User.prototype.AddOne = function (callback) {
    var user = {
        firstName: this.firstName,
        lastName: this.lastName
    };
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);
        }
        db.collection(‘user‘, function (err, collection) {
            if (err) {
                return callback(err);
            }
            collection.insert(
                user,
                {safe: true},
                function (err, newUser) {
                    mongodb.close();
                    if (err) {
                        return callback(err);
                    }
                    callback(null, newUser[0]);
                }
            )
        });
    });
};

User.prototype.UpdateById = function (Id, callback) {
    Id = BSON.ObjectID.createFromHexString(Id);
    var user = {
        firstName: this.firstName,
        lastName: this.lastName
    };
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);
        }
        db.collection(‘user‘, function (err, collection) {
            if (err) {
                mongodb.close();
                return callback(err);
            }
            collection.update(
                {_id: Id},
                user,
                {upsert: true, multi: false},
                function (err, result) {
                    mongodb.close();
                    if (err) {
                        return callback(err);
                    }
                    callback(null, result);
                }
            );
        })
    });
};

User.DeleteById = function (Id, callback) {
    if (!Id) {
        return;
    }
    Id = BSON.ObjectID.createFromHexString(Id);
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);
        }
        db.collection(‘user‘, function (err, collection) {
            if (err) {
                mongodb.close();
                return callback(err);
            }
            collection.remove({_id: Id}, function (err, result) {
                mongodb.close();
                if (err) {
                    return callback(err);
                }
                return callback(null, result);
            });
        });
    });
};

User.getAll = function (callback) {
    mongodb.open(function (err, db) {
        if (err) {
            return callback(err);
        }
        db.collection(‘user‘, function (err, collection) {
            if (err) {
                mongodb.close();
                return callback(err);
            }
            collection.find().toArray(function (err, docs) {
                mongodb.close();
                if (err) {
                    return callback(err);
                }
                callback(null, docs);
            });
        });
    });
};

module.exports = User;

  

简单的nodejs + mongodb CRUD

标签:

原文地址:http://www.cnblogs.com/lihaozhou/p/4449040.html

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