跳到主要内容

管理 .env 文件和设置变量

Prisma ORM 在项目初始化时使用 prisma init 为你创建一个 .env 文件。你不必局限于使用该文件,其他一些选项包括

  • 不要使用 .env 文件,让 Prisma ORM 直接使用系统环境变量
  • 使用 Prisma CLI 默认不检查的 位置.env 文件
  • 使用多个 .env 文件

直接使用系统环境

因为 Prisma ORM 在查找环境变量时会从系统的环境中读取,所以可以完全跳过使用 .env 文件,而在本地系统上手动创建它们。

信息

以下示例将使用设置 DATABASE_URL 环境变量,该变量通常用于数据库连接 URL。

在 Mac/Linux 系统上手动设置环境变量

在 Unix 机器(Mac/Linux)上的终端中,将变量作为键值对导出。

export DATABASE_URL=postgresql://test:test@localhost:5432/test?schema=public

然后使用 printenv 检查是否已成功设置

printenv DATABASE_URL
显示CLI结果
postgresql://test:test@localhost:5432/test?schema=public

在 Windows 系统上手动设置环境变量

以下示例说明了如何使用命令提示符 (cmd.exe) 和 PowerShell 为当前用户设置环境变量,具体取决于你的偏好。

set DATABASE_URL="postgresql://test:test@localhost:5432/test?schema=public"

然后检查是否已成功设置

set DATABASE_URL

手动管理 .env 文件

如果你想手动管理你的 .env 文件,可以使用 dotenv-clidotenv 包。

它们允许你

通过命令行使用 dotenv-cli

以下步骤展示了如何使用 dotenv-cli 包来使用替代文件来包含环境变量,而不是 Prisma ORM 创建的默认文件,然后该文件用于运行内省。

  1. 安装 dotenv-cli

    npm install -g dotenv-cli
  2. 在项目的根文件夹中创建一个文件 - 例如,.env3

  3. 要使用 .env3 文件,你可以在运行任何 Prisma ORM 命令时使用 dotenv 并指定要使用的 .env 文件。以下示例使用名为 .env3 的文件

    dotenv -e .env3 -- npx prisma db pull

注意:默认情况下,dotenv 不会将标志传递给 Prisma ORM 命令,这就是为什么该命令在 prisma 之前包含两个破折号 -- 的原因,从而可以使用诸如 --force--schema--preview-feature 之类的标志。

通过应用程序代码使用 dotenv

以下步骤展示了如何在你的项目代码中使用 dotenv 包来引用替代的环境文件。

  1. dotenv 添加到你的项目中

    npm install dotenv
  2. 在项目的根文件夹中创建一个文件 - 例如,.env3

  3. 要使用 .env3 文件,请在项目入口文件的顶部包含对 dotenv 的引用。

    import { config } from 'dotenv'
    config({ path: '.env3' })