2016-07-21 3 views
0

Ich erhalte einen Fehler beim Versuch, ein Mungo-Modell in eine separate Datei aufzunehmen.Mongoose Fehler beim Versuch, mein Modell aus einer anderen Datei zu laden

Innerhalb meiner server.js-Datei werden meine Mongo-Modelle definiert, bevor ich meine Routen anrufe. Ich habe mich umgesehen und festgestellt, dass die Definition der Modelle nach den Routen die Ursache für diesen Fehler ist, aber das ist nicht mein Fall.

//Require db config 
require('./app_api/config/model.js'); 

//Require routes config 
var routesAPI = require('./app_api/config/routes.js') 

var app = express(); 

Innerhalb meiner model.js-Datei benötige ich meine separaten Schemas.

var mongoose = require('mongoose'); 
var dbURI = 'mongodb://localhost/followdata'; 

mongoose.connect(dbURI); 

// CONNECTION EVENTS 
mongoose.connection.on('connected', function() { 
    console.log('Mongoose connected to ' + dbURI); 
}); 
mongoose.connection.on('error', function(err) { 
    console.log('Mongoose connection error: ' + err); 
}); 
mongoose.connection.on('disconnected', function() { 
    console.log('Mongoose disconnected'); 
}); 

// SCHEMA DECLERATION 
require('../models/user'); 
require('../models/userCart'); 

Also ich bin mir nicht wirklich sicher, was das Problem ist.

So versuche ich, mein Warenkorbmodell in mein Benutzermodellschema einzubringen.

var mongoose = require('mongoose'); 
var jwt   = require('jsonwebtoken'); 
var crypto  = require('crypto'); 
var Cart  = mongoose.model('Cart'); 

var Schema  = mongoose.Schema; 

var userSchema = new Schema({ ......... }); 

Und innerhalb meiner userCart.js Datei exportiere ich es richtig.

module.exports = mongoose.model('Cart', cartSchema); 

Antwort

1

Sie müssen in Ihrem Cart Schema benötigen, wenn Sie es in Ihrem Benutzermodellschema verwenden möchten.

Sie müssten also var Cart = require('yourPathToCart/cart') anstelle von var Cart = mongoose.model('Cart') (die vorherige Codezeile versucht, ein neues Modell mit dem Namen Cart zu erstellen, und hier kommt der Fehler her) in Ihrer Benutzermodell-Schemadatei.

Verwandte Themen