mongoose.model报错:MissingSchemaError:モデル「Article」にスキーマが登録されていません。

エラーコード


// 1. 引入mongoose模块
const mongoose = require('mongoose');
// 2.创建文章集合规则
const articleSchema = new mongoose.Schema({
    
    
    title: {
    
    
        type: String,
        maxlength: 20,
        minlength: 4,
        required: [true, '请填写文章标题 ']
    },
    author: {
    
    
        type: mongoose.Schema.Types.ObjectId,
        ref: 'User',
        required: [true, '请传递作者']
    },
    publishDate: {
    
    
        type: Date,
        default: Date.now
    },
    cover: {
    
    
        type: String,
        default: null
    },
    content: {
    
    
        type: String
    }
})
// 3.根据规则创建集合
const Article = mongoose.model('Article')
// 4. 将集合规则做为模块成员进行导出
module.exports = {
    
    
    Article
}

エラーの理由

最初はコレクションルールのみが作成されましたが、コレクションの作成時には使用されませんでした。
したがって、mongoose.model()には2番目のパラメーターがないため、エラーが発生します。

解決

mongoose.model()の2番目のパラメーターを追加します

変更されたコード


// 1. 引入mongoose模块
const mongoose = require('mongoose');
// 2.创建文章集合规则
const articleSchema = new mongoose.Schema({
    
    
    title: {
    
    
        type: String,
        maxlength: 20,
        minlength: 4,
        required: [true, '请填写文章标题 ']
    },
    author: {
    
    
        type: mongoose.Schema.Types.ObjectId,
        ref: 'User',
        required: [true, '请传递作者']
    },
    publishDate: {
    
    
        type: Date,
        default: Date.now
    },
    cover: {
    
    
        type: String,
        default: null
    },
    content: {
    
    
        type: String
    }
})
// 3.根据规则创建集合
const Article = mongoose.model('Article', articleSchema)
// 4. 将集合规则做为模块成员进行导出
module.exports = {
    
    
    Article
}

セルフモチベーション

前向きな姿勢と正確な目標は、すべての成果の出発点です。私は自分の目標を念頭に置き、前向きな姿勢を取り、考えを導き、感情をコントロールし、運命をコントロールしなければなりません!

おすすめ

転載: blog.csdn.net/weixin_50001396/article/details/112581136