2012-03-07 11 views
0

私はnode.js、Express、およびMongoDBで簡単なWebアプリケーションを作成しようとしています。私はMongoose documentationの指示に従ったが、DBに書き込もうとしているときに私のコードが黙って失敗するようだ。それはのmongodコンソール出力に表示するので、Mongooseはデータベースの書き込みを暗黙的に失敗します

// 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."); 
    } 
}); 

は、接続が正常に作成されます。

私はvar db = require("./db")と-file私の主なapp.jsに次のコードが含まれています。 プログラムは "Save successful。"も表示しますが、mongoシェルの状況をdb.database.find();で調べると、データベースはまだ空です。

なぜオブジェクトが保存されませんか?

+0

あなたのコードは非常によく動作します...あなたはまだ同じ問題に直面した場合..あなたが適切な場所を見ていることを確認した後であるかを説明あなたはmongo shellに接続し、mongo shellで何のコマンドを発行しているのですか? –

答えて

2

私はあなたのコードを試して、それは私のためにうまく動作します。あなたはあなたのデータを探していますか?

接続しますのmongoシェルで、次の方法を試してください。

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

Heh、ありがとう、ありがとう。 – Pekka

関連する問題