首页 文章

如何在应用启动时在MongoDB中插入初始数据?

提问于
浏览
0

我正在使用快递和猫鼬 . 我想在服务器启动时在MongoDB中插入一些数据 . 只有数据不存在 . 我可以使用任何模块吗?

1 回答

  • 0

    您不需要外部模块来执行此操作 . 您知道所需的数据,了解数据的结构,并且您可以轻松地自行完成 .

    只需在外部文件的主 app.js or 中声明种子逻辑,然后将其导入主 app.js 文件:

    const MyModel = require("./models/my-model");
    const express = require("express");
    
    const app = express();
    
    async function mySeeder() {
        const data = await MyModel.find({...}).exec();
        if (data.length !== 0) {
            // Data exists, no need to seed.
            return;
        }
        const seed = new MyModel({...});
    
        // some other seed logic
        // ...
    
        await seed.save()
    }
    
    
    mySeeder();
    app.listen(3000, () => console.log("Hello World!"));
    

相关问题