2016-07-21 3 views

Antwort

0

Soweit ich verstanden habe, möchten Sie die Eigenschaft Ihres Mongoose-Schemas verwenden. Ich werde Ihnen ein kleines Beispiel geben, wie Sie es effektiv nutzen können.

Ihre Modelldatei

var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 

//Schema for User 
var UserSchema = new Schema({ 
    name: { 
     type: String, 
    }, 
    email: { 
     type: String 
    }, 
    password: { 
     type: String, 
    }, 
}); 

module.exports = mongoose.model('User', UserSchema); 

In Ihrer Funktion , wo Sie dieses Modell enthalten sein sollen

var User = require('/path/models/user'); 

var UserController = { 
    create: function(req, res){ 

      var user = new User(); 

      user.name = req.body.name; 
      user.email = req.body.email; 
      user.password = req.body.password; 

      //rest of the functionality on these bod params. 
    } 
} 

ich dieses kleine Beispiel hoffen, in der Lage zu helfen.

+0

Danke, aber meine Frage war über etwas anderes. Ich habe eine Gegensammlung für andere Sammlung, nach dieser Empfehlung https://docs.mongodb.com/v3.0/tutorial/create-an-auto-incrementing-field/ – Standa

+0

Danke, aber meine Frage war über etwas anderes. Ich habe eine Gegensammlung für andere Sammlung, gemäß dieser Empfehlung https://docs.mongodb.com/v3.0/tutorial/create-an-auto-incrementing-field/. Ich benutze den Sammlungsnamen als die _id, also zum Beispiel für die Sammlung 'Produkte', ich habe einen Datensatz in der Gegensammlung {_id: 'products', seq: (number)}, für die Sammlung 'Fragen' habe ich eine Aufnahme in die Counter-Sammlung {_id: 'questions', seq: (number)}. – Standa

+0

Also, meine Frage war, ob es richtig ist, einen Sammlungsnamen von Mongoose-Modell zu erhalten, indem Sie die Eigenschaft model.schema.options.collection lesen, oder wenn es einen besseren Weg gibt, da die Eigenschaft model.schema.options.collection gelesen wird ist nur ein Hack, und es kann in der späteren Version ändern, was dazu führt, dass es nicht funktioniert. – Standa