2012-03-07 45 views
0

我正試圖用node.js,Express和MongoDB編寫一個簡單的web應用程序。我按照Mongoose documentation上的說明操作,但是當我試圖寫入數據庫時​​,我的代碼似乎無聲無息地失敗了。貓鼬靜靜地失敗數據庫寫入

包括我在我的主app.js下面的代碼-file與var db = require("./db")

// db.js 

var mongoose = require('mongoose'); 

var Schema = mongoose.Schema 
    , ObjectId = Schema.ObjectId; 

var server_name = "localhost"; 
var db_name = "database"; 

var db = mongoose.connect('mongodb://'+server_name+'/'+db_name); 
log.debug('Connecting to MongoDB "'+db_name+'" at '+server_name); 

// Database schemas 

var Compo = new Schema({ 
    name : String, 
    description : String 
}); 

var compoModel = mongoose.model('Compo', Compo); 

var compoModelInstance = new compoModel(); 
compoModelInstance.name = "Competition name."; 
compoModelInstance.description = "Competition description."; 

compoModelInstance.save(function (err) { 
    if (err !== null) { 
    console.log(err); 
    } else { 
    console.log("Save successful."); 
    } 
}); 

連接創建成功,因爲它在mongod的控制檯輸出顯示出來。 該程序還打印出「保存成功」,但是當我檢查從mongo shell的情況與db.database.find();我可以看到數據庫仍然是空的。

爲什麼不保存對象?

+0

您的代碼工作得很好...檢查你正在尋找正確的地方。如果你仍然面臨着同樣的問題,然後解釋如何你連接到mongo shell以及你在mongo shell中發出什麼命令 – 2012-12-28 07:41:18

回答

2

我試過你的代碼,它適用於我。您是否在正確的位置查找數據?

與蒙戈外殼

連接和嘗試以下操作:

use database; 
db.compos.find() 
+0

呵呵,就是這樣,謝謝。 – Pekka 2012-03-07 15:53:56