2017-08-21 111 views
1

我是新来的猫鼬和mongodb,我试图连接到mlab并插入一些数据,但我不断收到以下代码错误mongoose - blogPost不是构造函数错误(模式/模型错误)

var newPost = new blogPost({title:'First Post', post:'this is my first post'}); 
      ^

TypeError: blogPost is not a constructor 
    at Object.<anonymous> (C:\Users\ipingou\website\hwnay\index2.js:39:15) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
    at Module.runMain (module.js:604:10) 
    at run (bootstrap_node.js:394:7) 
    at startup (bootstrap_node.js:149:9) 
    at bootstrap_node.js:509:3 

这是我的代码:

const mongoose = require('mongoose');  

var blogPost = mongoose.Schema({ 
     title : String, 
     post : String 
    }); 

mongoose.model('blogPost',blogPost, 'blogPost'); 

var newPost = new blogPost({title:'First Post', post:'this is my first post'}); 

newPost.save(function(err,newPost){ 
    if(err) return console.log(err); 
    console.log(newPost); 
}); 

回答

1

你缺少的重要组成部分。所以,你必须定义一个模式,但你需要从架构创建一个模型:

var Post = mongoose.model('blogPost', blogPost); 

var newPost = new Post({ title: 'First Post', post: 'this is my first post' }); 

newPost.save(function(err, newPost){ 
    if(err) { 
     return console.log(err); 
    } 
    console.log(newPost); 
}); 

你可以找到一个例子here。更详细的解释可以在here找到。

+1

谢谢!就是这样。我想我应该仔细阅读文档。 THX〜! –

+0

我很高兴听到这个消息。你能否接受我的回答作为你的问题的答案? –

相关问题