2012-11-17 4 views
0

J'ai un problème avec ce nom de collection:mongodb Node.js

module.exports = function() { 

    var mongoose = require('mongoose'); 
    var db = mongoose.createConnection('localhost', 'race'); 
    db.on('error', console.error.bind(console, 'connection error:')); 
    db.once('open', function() {}); 

    var collection = 'test'; 
    var Schema = mongoose.Schema; 
    var ObjectId = Schema.ObjectId; 

    var schema = new Schema({ 
     author: ObjectId, 
     name: String, 
     date: Date 
    }); 

    this.model = db.model(collection, schema); 

    var silence = new this.model({ name: 'Silence' }) 
    console.log(silence.name); 
    silence.save(); 

    this.model.find(function (err, log) { 
     console.log(err) 
     console.log(log) 
    }) 

    return this; 
}; 

J'ai déjà une collection de test, mais console.log (log) juste retour Silence,

en fait Le silence est en registre collection "tests" et non "test"

pouvez-vous me expliquer pourquoi, je mets

var collection = 'test'; 

Répondre

2

Essayez cette

var schema = new Schema({ 
     author: ObjectId, 
     name: String, 
     date: Date 
    }, { collection: collection }); 
+0

Cela fonctionne grâce :) – Ajouve

Questions connexes