Javascript 如何重用开放式mongoose连接?

Javascript 如何重用开放式mongoose连接?,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我想建立一个简单的mongoose连接,并重用相同的连接来插入模型的多个实例。我可以这样做还是需要创建多个连接?我得到以下错误: Error: Trying to open unclosed connection. at NativeConnection.Connection.open (/Users/me/Development/Node/tennistracker/node_modules/mongoose/lib/connection.js:210:15) 代码: 你应该在全球范

我想建立一个简单的mongoose连接,并重用相同的连接来插入模型的多个实例。我可以这样做还是需要创建多个连接?我得到以下错误:

Error: Trying to open unclosed connection.
    at NativeConnection.Connection.open (/Users/me/Development/Node/tennistracker/node_modules/mongoose/lib/connection.js:210:15)
代码:


你应该在全球范围内建立这种联系

Mongoose实现了一个,因此您不需要并且不应该试图在每个方法中建立这样的连接

如果您想将不同的模型实例关联到一个模式实例,那么这应该不是问题。只需单独声明,如中所示

var User1=mongoose.model(“User1”,userSchema);
var User2=mongoose.model(“User2”,userSchema);
一切都会好起来的

相信这项工作已经为你完成了。有关更多信息,请参阅文档中的页面

function(err, resp, body) {

            var db  = mongoose.connect('mongodb://localhost/forumposts');
            var MTF = db.model('ForumPost', ForumPost);

            $ = cheerio.load(body);
            $("[id*=post]").each(function(i, elem){

                var title =$(elem).find('a strong');
                if(!$(title).text().match(/livescores/i)) {

                    var forum = $(elem).find('td.thead > span > a').text();
                    console.log('Forum: '+normalizeWS(forum));
                    title = $(title).text();
                    utils.log('Title: '+normalizeWS(title));
                    var post = $(elem).find('div > em');
                    post = $(post).text();

                    utils.log('Post: '+normalizeWS(post));

                    var MTFPost = new MTF();

                    MTFPost.author = 'author';
                    MTFPost.forum  = normalizeWS(forum);
                    MTFPost.body   = normalizeWS(post);
                    MTFPost.title  = normalizeWS(title);

                    MTFPost.save(function (err) {
                        if(err) {
                            console.log(err);
                        }
                    });                }

            });
            callback(null, 'done', callback);
        });