2016-10-27 5 views
4

私は奇妙なことに遭遇しました。私はいくつかのマングースモデルを持っている - そのうちの一つ(一つだけで!)に私はこのエラーを取得:私はそれは非常に奇妙な、私はいくつかの作業のスキーマを持っているように見つけるmongoose TypeError:スキーマがコンストラクタではありません

TypeError: Schema is not a constructor 

を。私は、非稼働のスキーマにmongoose.Schemaのログを記録しようとしましたが、それは実際に私の作業スキーマのmongoose.Schemaとは異なります - それはどのように可能ですか?コードはほぼ同じです。 ここでは非稼働スキーマのためのコードは次のとおりです。作業スキーマの

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; 

コード:

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; 

任意の助けをいただければ幸いです!

+0

の下に使用して、コンストラクタの問題を解決しました!男、私は馬鹿だと感じますか?迅速な返信ありがとうございます。答えを作ると私はそれを受け入れる:) –

+0

私は同じエラーが発生している、どのようにこれを解決しましたか? – vashishth

+0

@vashishth - 私の問題は、 'Schema.Types.ObjectId'の' Types'が欠落しています。これを追加すると、私の問題は消えてしまった。 –

答えて

8

私は同じことに遭遇しました。私はこの

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); 

のような以前のコードを持ってそれから私は、スクリプトもちろん

var mongoose = require('mongoose'); 
    var schema = mongoose.Schema({ 
     path : {type:string , required:true}, 
     title: {type:string , required: true} 
    }) 
module.export = mongoose.model('game', schema); 
関連する問題