2012-12-19 7 views
2

다음은 몽구스를 사용하여 새 컬렉션을 만드는 중 오류가 발생했습니다. 다음은새 컬렉션 던져 생성 오류

D:\Workspace\node-2012-20\node\node_modules\mongoose\lib\index.js:191 
     throw new Error('Schema hasn\'t been registered for model "' + name + '" 
      ^
Error: Schema hasn't been registered for model "testDocAccessModel". 
Use mongoose.model(name, schema) 
    at Mongoose.model (D:\Workspace\node-2012-20\node\node_modules\mongoose\lib\index.js:191) 
    at Module._compile (module.js:449:26) 
    at Object.Module._extensions..js (module.js:467:10) 
    at Module.load (module.js:356:32) 

코드

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

    exports.TestDocumentAccessSchema = new Schema({ 
     Id: { type: Schema.ObjectId }, 
     parentId: { type: Schema.ObjectId }, 
     userId: { type : String }, 
     userName: { type : String }, 
    }); 

    var testDocAccessModel = mongoose.model('TestDocumentAccess', exports.TestDocumentAccessSchema); 

모든 단서는?

+0

어쩌면 당신은 당신이 당신의 컨트롤러에서 사용하기 전에 모델을 필요로하고 있는지 확인하기 위해이 필요합니다 확인? – JamesOR

+0

오류 메시지는''testDocAccessModel ''모델을 참조합니다. 올바른 코드를보고 있습니까? – JohnnyHK

+0

코드를 테스트 한 결과 잘 작동합니다. @JamesOR이 옳다고 생각합니다. 요구 사항을 확인하십시오. – baffonero

답변

0

그냥 이런 식으로 코드를 변경하고 도움이되었다 알려

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

    var TestDocumentAccessSchema = new Schema({ 
     Id: { type: Schema.ObjectId }, 
     parentId: { type: Schema.ObjectId }, 
     userId: { type : String }, 
     userName: { type : String }, 
    }); 

    var testDocAccessModel = mongoose.model('TestDocumentAccess',TestDocumentAccessSchema); 
    exports.TestDocumentAccessSchema = TestDocumentAccessSchema;