最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Schema尚未注册模型。 MongoDB的>猫鼬

运维笔记admin14浏览0评论

Schema尚未注册模型。 MongoDB的>猫鼬

Schema尚未注册模型。 MongoDB的>猫鼬

您好我的代码如下所示:

var mongoose=require('mongoose');
mongoose.connect('mongodb://localhost/test');

var Schema=mongoose.Schema
, ObjectId=Schema.ObjectId;

var BlogPost= new Schema({
    author:ObjectId,
    title:String,
    body:String,
    date:Date
    });

var myModel =mongoose.model('BlogPost','BlogPost');
console.log(myModel);

需要建议。我总是得到这个例外。

  500 MissingSchemaError: Schema hasn't been registered for model "BlogPost".<br/>Use mongoose.model(name, schema)
回答如下:

你以错误的方式打电话给mongoose.model。您应该传递一个架构对象对象,但是您要传递'BlogPost'字符串。请尝试以下代码:

var BlogPost= new Schema({
  author: ObjectId,
  title: String,
  body: String,
  date: Date
});

var myModel = mongoose.model('BlogPost', BlogPost); // BlogPost is an object here

之后,mongoose将在blogposts数据库中创建mongodb://localhost/test集合(小写和复数)。如果要更改与模型对应的集合名称,请将其作为thirs参数传递:

var myModel = mongoose.model('BlogPost', BlogPost, 'BlogPost');
发布评论

评论列表(0)

  1. 暂无评论