如何在Nestjs中创建种子?

San*_*rez 5 seeding nestjs

我的应用程序具有此目录结构。

App
|-- src
    |-- modules
        |-- user
        |-- role
        |-- company
        |-- ...
        |-- app.module.ts
        |-- main.js (Application Bootstrap)
        |-- seed.js
    |-- ...other files
Run Code Online (Sandbox Code Playgroud)

我创建了一个包含以下内容的文件:

seed.ts

在此输入图像描述

我想在应用程序的开头插入数据,以完成应用程序工作所需的数据库中的一些表的数据。

谢谢您的帮助!

Hos*_*ari 24

好吧,让我们变得更简单,您有两个选项用于播种,queryRunner.manager.insert()在迁移文件中使用,以及让应用程序在每次运行时运行迁移!

AppService实现OnApplicationBootstrap然后调用它的函数中,您在该函数中编写的任何内容都将在每次运行应用程序时被调用,这是一个示例:


@Injectable()
export class AppService implements OnApplicationBootstrap{
  onApplicationBootstrap(): any {
  // add a functionality to check if the data already exists, if not add it manually
  }
}

Run Code Online (Sandbox Code Playgroud)