为什么我的mongodb异步保存失败?

时间:2015-10-12 23:09:30

标签: node.js mongodb promise

这是代码;任何指针我哪里错了? 这是我使用承诺的方式吗?我希望每次执行保存之前调用insert()都会检查是否存在有效的db conn ...

没有错误,但数据库中没有条目。
此外,控制台日志'连接'显示一次,如预期的那样 - 第二个插入重用连接(或我期望它)......

// mongoApi.js

var assert = require('assert');
var promise = require('bluebird');
var mongoClient = promise.promisifyAll(require('mongodb').MongoClient);
var log = require('./logger.js');

var url = 'mongodb://localhost/yangDB';
var dbconn = false;

var getDb = function () {
    if (!this.dbconn) {
        console.log('connecting...')
        this.dbconn = mongoClient.connectAsync(url);
    }
    return this.dbconn;
};

var insert = function (doc) {
    getDb().then(function (db) {
        db.collection('yangTemplates').save(doc);
    });
};

insert( { "first insert" : new Date() } );
insert({ "second insert" : new Date() } );

// eventually: module.exports.insert = insert;
// main.js: var mapi = require('./mongoApi.js'); mapi.insert({a:true});

0 个答案:

没有答案