跳到主要内容

管理 .env 文件和设置变量

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

直接使用系统环境

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

info

以下示例将使用设置 ` 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-cli` `dotenv` 包。

它们允许您

通过命令行使用 `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' })