gpt4 book ai didi

node.js - 尚未为模型注册架构。 Mongodb> Mongoose

转载 作者:可可西里 更新时间:2023-11-01 09:20:56 24 4
gpt4 key购买 nike

您好,我的代码如下所示:

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

需要建议。我总是得到这个异常(exception)。

  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 将在 mongodb://localhost/test 数据库中创建 blogposts 集合(小写和复数)。如果您想更改与您的模型对应的集合名称,请将其作为 thirs 参数传递:

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

关于node.js - 尚未为模型注册架构。 Mongodb> Mongoose ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20024504/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com