【发布时间】:2021-06-29 15:25:06
【问题描述】:
如果我正在使用 TypeORM 管理的数据库创建 NestJs 应用程序,该数据库考虑 2 种类型的用户(普通用户和管理员用户),其中只有管理员可以创建其他用户(任何类型),有什么好的做法可以保证也就是说,当应用启动时,它已经有一个默认管理员了?
我在网上搜索并找到了有关播种或迁移的结果,但在我看来,这些都是只能在开发中使用的变通方法。
如果应用要投入生产,应该如何处理?
【问题讨论】:
-
你说的是SQL用户吧?还是一些自定义用户?
-
@JuanRambal,自定义用户。我有一个名为 User 的实体。
-
嗯,在这种情况下可以提供更多上下文吗?我不明白你想做什么
-
只是:如果只有用户可以创建其他用户,我需要一个用户从一开始就存在,否则就是死锁。
-
好的,在这种情况下,您的解决方案是有效的,在您的应用程序模块或数据库模块上使用 OnModuleInit 可确保您的 api 在启动时具有管理员用户