gpt4 book ai didi

node.js - 创建模型时出现 Mongoose 错误(使用步骤)

转载 作者:IT老高 更新时间:2023-10-28 13:04:49 26 4
gpt4 key购买 nike

尝试在 Mongoose 中创建模型时,出现以下错误

[TypeError: Cannot read property 'options' of undefined]

不知道是什么原因

"use strict";
var Step = require('step');
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

function randomFunction() {
var categorySchema = new Schema({
id: Number,
name: String,
description: String
}, { collection: 'categories' });

var Category;

//...

mongoose.connect('mongodb://localhost/grouping');

new Step(
function() { //Connect to mongodb
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.on('open', this);
},
function() { //Create model
console.log(categorySchema); //Logs the schema object right
Category = mongoose.Model('Category', categorySchema);


},
function(err) {
console.log(err); //Error here
});
//...
}

我对 Mongo 很陌生(对 Node 也很陌生),但我完全不知道错误消息的含义。

我知道我在架构中定义了选项,但我看不出它是如何未定义的,谁能指出我正确的方向?

注意 - 这是原始代码的一个很大的删减,这是一般结构(实际上在 mongoose.Model('Cat... 下面有一些代码,但它被跳过了,我假设因为错误是由 mongoose.Model 调用引发的,因为它甚至没有直接打印 console.log("Hello");

编辑我发现在 Mongoose (mongoose/lib/document.js) 内部试图获取 this.schema 但它是未定义的

function Document (obj, fields, skipId) { //Line 37
this.$__ = new InternalCache;
this.isNew = true;
this.errors = undefined;

var schema = this.schema; //-> undefined
// ...

最佳答案

原来我不是那种善于观察的人,

mongoose.Model 应该是 mongoose.model

关于node.js - 创建模型时出现 Mongoose 错误(使用步骤),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15840844/

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