2012-03-07 2 views
0

Я пытаюсь написать простое веб-приложение с node.js, Express и MongoDB. Я следовал инструкциям на Mongoose documentation, но мой код, кажется, терпит неудачу, когда я пытаюсь писать в БД.Mongoose молчает сбой базы данных

Я включил следующий код в моем главном 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 с помощью db.database.find();, я вижу, что база данных по-прежнему пуста.

Почему не сохраняется объект?

+0

Ваш код работает очень хорошо ... Убедитесь, что вы смотрите на нужном месте .. Если вы по-прежнему сталкиваются с той же проблемой, то объяснить, как это вы подключаетесь к оболочке mongo и какие команды вы выпускаете в оболочке mongo. –

ответ

2

Я пробовал ваш код, и он отлично работает для меня. Вы ищете подходящее место для своих данных?

Connect с Монго оболочки и попробуйте следующее:

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

Хех, вот и все, спасибо. – Pekka

Смежные вопросы