【问题标题】:Mongoose Error: "useCreateIndex" is not supported but documentation still has itMongoose 错误:不支持“useCreateIndex”,但文档仍然有它
【发布时间】:2022-04-30 11:41:37
【问题描述】:

这令人沮丧。不知道为什么我在文档仍然存在时收到此错误。请帮忙!

我将 MongoDB 与 mongoose 连接起来的代码。

const mongoose = require('mongoose');

const connectDB = async () => {
    try {
        const conn = await mongoose.connect(process.env.MONGO_URI, {
            useNewUrlParser: true,
            useCreateIndex: true,
            useUnifiedTopology: true
        });

        console.log(`MongoDB Connected: ${conn.connection.host}`.cyan.underline.bold);
    } catch (err) {
        console.log(`Error: ${err.message}`.red);
        process.exit(1);
    }

}

module.exports = connectDB;

错误:不支持选项 usecreateindex

文档说 useCreateIndex 是更新的方法。

https://mongoosejs.com/docs/deprecations.html#

【问题讨论】:

标签: mongodb mongoose


【解决方案1】:

对我来说,我只是删除 useCreateIndex

【讨论】:

    【解决方案2】:

    首先,在你的项目根目录中npm i mongoose命令安装Mongoose,然后使用这段代码连接MongoDB并创建一个新的数据库。

    const mongoose = require('mongoose')
    
    mongoose.connect('mongodb://127.0.0.1:27017/task-manager-api', {
        useNewUrlParser: true,
        useCreateIndex: true
    })
    

    【讨论】:

      【解决方案3】:

      useNewUrlParser、useUnifiedTopology、useFindAndModify 和 useCreateIndex 不再是受支持的选项。 Mongoose 6 总是表现得好像 useNewUrlParser、useUnifiedTopology 和 useCreateIndex 为 true,而 useFindAndModify 为 false。请从您的代码中删除这些选项。

      【讨论】:

        猜你喜欢
        • 2021-10-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多