首页 > 解决方案 > 编译后无法覆盖“历史”模型

问题描述

我正在尝试保存查询,但它给了我错误,一旦编译就无法覆盖模型。我的模型文件是

const mongoose = require("mongoose")

const history = new mongoose.Schema({
    search_name: {
        type: String,
        required: true,

    },
    date: {
        type: Date,
        required: true
    }
})

module.exports = mongoose.model("history", history)

我的路线文件是:

const keys = require("../config/keys")
const Bing = require('node-bing-api')({ accKey: "0112a649fd944630b0954a20ac8c71f6" });
let History = require("../Models/searchhistory")
module.exports = (app) => {

    app.get("/api/imagesearch/:searchname", (req, response) => {

        const query = req.params.searchname
        const per_page = parseInt(req.query.offset, 10)
        Bing.images(query, {
            count: 100,
            offset: 0
        }, (error, res, body) => {
            const hist = new History({

                })
                // hist.save().then(() => {

            // })
            response.send(body)
        })
    })
}

运行代码时出现这些错误:

F:\image abstraction layer\node_modules\mongoose\lib\index.js:453
  throw new _mongoose.Error.OverwriteModelError(name);
  ^

OverwriteModelError:无法覆盖history模型一旦编译。在新的 OverwriteModelError (F:\image abstraction layer\node_modules\mongoose\lib\error\overwriteModel.js:20:11) 在 Mongoose.model (F:\image abstraction layer\node_modules\mongoose\lib\index.js:453 :13) 在对象处。(F:\image abstraction layer\Models\searchhistory.js:15:27) 在 Module._compile (internal/modules/cjs/loader.js:688:30) 在 Object.Module._extensions..js (internal/modules /cjs/loader.js:699:10) 在 Module.load (internal/modules/cjs/loader.js:598:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:537:12) 在 Function. Module._load (internal/modules/cjs/loader.js:529:3) 在 Module.require (internal/modules/cjs/loader.js:636:17) 在 require (internal/modules/cjs/helpers.js: 20:18)在对象。(F:\image abstraction layer\routes\routes.js:3:15) 在模块。

标签: javascriptnode.jsmongodbmongoosemongoose-schema

解决方案


也许你可以通过改变它来解决它

module.exports = mongoose.model("history", history)

为了那个原因

module.exports = mongoose.model.history || mongoose.model("history", history)

推荐阅读