J'ai rencontré une chose étrange. J'ai plusieurs modèles de mangouste - et dans l'un d'eux (seulement dans un!), J'obtiens cette erreur:
TypeError: Schema is not a constructor
Je trouve cela très étrange car j'ai plusieurs schémas de travail. J'ai essayé de consigner mongoose.Schema
dans le schéma qui ne fonctionnait pas et il est en effet différent du mongoose.Schema dans mes schémas de travail - comment est-ce possible? Le code est presque identique . Voici le code pour le schéma qui ne fonctionne pas:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var errSchema = new Schema({
name: String,
images:[{
type:String
}],
sizes:[{
type: String
}],
colors:[{
type: Schema.ObjectId,
ref: 'Color'
}],
frontColors:[{
type: Schema.ObjectId,
ref: 'Color'
}],
script: Boolean
},{
timestamps: true
});
var Err = mongoose.model('Err', errSchema);
module.exports = Err;
Code pour un schéma de travail:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var colorSchema = new Schema({
name: String,
image: String,
rgb: String,
comment: String,
});
var Color = mongoose.model('Color', colorSchema);
module.exports = Color;
Toute aide serait appréciée!
Ce devrait être Schema.Types.ObjectId
, pas Schema.ObjectId
: http://mongoosejs.com/docs/schematypes.html
J'ai rencontré la même chose. J'ai le code précédent comme ça
var mongoose = require('mongoose');
var Schema = mongoose.Schema();
var schema = new Schema({
path : {type:string , required:true},
title: {type:string , required: true}
})
module.export = mongoose.model('game', schema);
Puis j'ai résolu le problème du constructeur en utilisant le script ci-dessous
var mongoose = require('mongoose');
var schema = mongoose.Schema({
path : {type:string , required:true},
title: {type:string , required: true}
})
module.export = mongoose.model('game', schema);
Comprenez que je suis en retard pour le parti, mais le code ci-dessous a fonctionné pour moi, pourrait être utile pour quelqu'un qui utilise la version mangouste 5.2.15
const mongoose = require('mongoose');
const Scheme = mongoose.Schema;
const ItemSchema = new Scheme({
name: {
type: String,
require: true
},
date: {
type: Date,
default: Date.now
}
});
module.exports = Item = mongoose.model('Item', ItemSchema);