2011-04-27 40 views
1
mongoose.connect('mongodb://localhost/guesswho'); 
var Schema = mongoose.Schema; 
var Message = new Schema({ 
    author: { type:String }, 
    body: { type:String }, 
}); 
var MessageModel = mongoose.model("Message"); 

我跟着這裏的每一個指令:https://github.com/LearnBoost/mongoose爲什麼Node.js插件Mongoose不起作用?我跟所有指令

但運行時,我得到這個錯誤:Error: Schema hasn't been registered for model "Message".

我甚至試過這樣:var MessageModel = mongoose.model("Message", Message); 當我做到這一點...有沒有錯誤。但是,MessageModel未定義。

回答

5

修正:

var Message = new Schema({ 
    author: { type:String }, 
    body: { type:String }, 
}); 
mongoose.model("Message",Message); 
var MessageModel = mongoose.model("Message"); 
var aMessage = new MessageModel(); 
aMessage.author = "apple"; 
aMessage.body = "orange"; 
aMessage.save(function(e){ 

}); 

從IRC稱爲coreb有人固定它。

+0

是的,你創建了架構,但你從來沒有保存過它。所以當你試圖得到它時,它找不到它。 – neebz 2011-04-27 08:00:11

+0

Upvote實際發佈你如何解決它。 – 2011-08-11 21:45:34

+0

upvote出於同樣的原因。它實際上幫我節省了一些時間,發現了一個潛在的錯誤。 – guiomie 2011-10-02 14:30:37