2015-06-16 7 views
7

का उपयोग कर mongolab से कनेक्ट करने के लिए node.js कैसे प्राप्त करें मैं mongoose (node.js और mongodb के लिए मॉड्यूल) का उपयोग करने का प्रयास कर रहा हूं। और mongolab ऊपर और चलने के साथ कनेक्शन पाने की कोशिश की। मैंने अपनी app.js फ़ाइल के शीर्ष पर निम्नलिखित की कोशिश की, लेकिन मैं db.on फ़ंक्शन में प्रवेश नहीं कर सका।mongoose

global.mongoose = require('mongoose'); 
var uri = 'mongodb://username:password#####@ds.mongolab.com:#####/db'; 
global.db = mongoose.createConnection(uri); 
global.Schema = mongoose.Schema; 
db.on('error', console.error.bind(console, 'connection error:')); 
db.once('open', function (callback) { 
    console.log("db up") 
    var userSchema = new Schema({ 
     name : { type: String, default: '' } 
    , password : { type: String, default: '' } 
    }); 
    var userModel = mongoose.model('User', userSchema); 
    var test = new userModel({name: "test", password: "test"}) 

    console.log("me: " + test) 

    test.save(function (err, test) { 
    console.log("saved?") 
    if (err) { 
     console.log("error"); 
     return console.error(err); 
    } 
    console.log("saved!") 
    }); 

    console.log("after save"); 

}); 

मेरे टर्मिनल उत्पादन था

/usr/local/bin/node bin/www 
me: { _id: 557f93a8a8b4b8628095bd01, password: 'test', name: 'test' } 
after save 

डिबगर भी समारोह को छोड़ने के लिए लग रहा था (WebStorm पर मेरे डिबगिंग कौशल हालांकि सीमित हैं)

यह भी एक और अधिक सरल में काम नहीं किया तरीका:

mongoose = require('mongoose'); 
var uri = 'mongodb://username:password.mongolab.com:#####/db'; 
db = mongoose.createConnection(uri); 
Schema = mongoose.Schema; 

    var userSchema = new Schema({ 
     name : { type: String, default: '' } 
    , password : { type: String, default: '' } 
    }); 
    var userModel = mongoose.model('User', userSchema); 
    var test = new userModel({name: "test", password: "test"}) 

    console.log("me: " + test) 

    test.save(function (err, test) { 
    console.log("saved?") 
    if (err) { 
     console.log("error"); 
     return console.error(err); 
    } 
    console.log("saved!") 
    }); 
    console.log("after save"); 

इससे मुझे एक ही टर्मिनल आउटपुट दिया गया।

मैं जानना चाहता हूं कि वास्तव में मुझे अपने मोंगोलाब डेटाबेस से बात करना शुरू करने के लिए क्या कदम उठाने होंगे। इसके अलावा मुझे मोंगलोल पर बनाए गए किसी भी संग्रह को नहीं दिख रहा है।

उत्तर

8

का उपयोग कर के बजाय

db = mongoose.connect(uri); 

db = mongoose.createConnection(uri); 
+1

हम एक विजेता मिल गया कोशिश करो! – Bren

संबंधित मुद्दे