跳至主要内容

管理 .env 文件和设置变量

Prisma ORM 在使用 prisma init 初始化项目时会为您创建一个 .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' })