zoukankan      html  css  js  c++  java
  • Solve Error: MissingSchemaError: Schema hasn't been registered for model "YourModel".

    使用MongoDB的时候,如果遇到下面这个错误:

    /home/ec2-user/YourProject/node_modules/mongoose/lib/index.js:391
          throw new mongoose.Error.MissingSchemaError(name);
          ^
    MissingSchemaError: Schema hasn't been registered for model "YourModel".
    Use mongoose.model(name, schema)
        at new MissingSchemaError (/home/ec2-user/YourProject/node_modules/mongoose/lib/error/missingSchema.js:20:11)
        at Mongoose.model (/home/ec2-user/YourProject/node_modules/mongoose/lib/index.js:391:13)
        at Object.<anonymous> (/home/ec2-user/YourProject/YourScript.js:4:27)
        at Module._compile (internal/modules/cjs/loader.js:722:30)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:733:10)
        at Module.load (internal/modules/cjs/loader.js:620:32)
        at tryModuleLoad (internal/modules/cjs/loader.js:560:12)
        at Function.Module._load (internal/modules/cjs/loader.js:552:3)
        at Function.Module.runMain (internal/modules/cjs/loader.js:775:12)
        at startup (internal/bootstrap/node.js:300:19)
        at bootstrapNodeJSCore (internal/bootstrap/node.js:826:3)

    一般来说是MongoDB数据库的Model没有链上,在YourScript.js的开头,一般下面几行不能少:

    require('./yourModel.js');
    const mongoose = require('mongoose');
    mongoose.connect("mongodb://localhost/YourDatabase");
    const YourModel = mongoose.model('YourModel');

    然后yourModel.js的内容可以为:

    const mongoose = require('mongoose');
    const Schema = mongoose.Schema;
    
    const YourModelSchema = new Schema({
        something1: { type: String, required: '`something1` must be filled', unique: true },
        something2: { type: String },
    });
    
    module.exports = mongoose.model('YourModel', YourModelSchema);
  • 相关阅读:
    memcached-session-manager 教程实现session共享
    无锁编程实战演练
    关于找不到类org/apache/commons/lang/xwork/StringUtils的问题
    10 ref 和 out 之间的差别
    MongoDB---性能优化---(1)
    Ubuntu14.04+eclipse下cocos2d-x3.0正式版环境的搭建
    谈谈“一站式服务”
    串的堆分配存储表示
    cocos2d-x教程3:用php或DOS批处理命令来转换文件和解压缩zip
    为HttpStatusCodeResult加入customErrors
  • 原文地址:https://www.cnblogs.com/grandyang/p/10049209.html
Copyright © 2011-2022 走看看