使用 TypeScript 将 Prisma ORM 添加到现有 MongoDB 项目中
了解如何将 Prisma ORM 添加到现有 Node.js 或 TypeScript 项目中,通过连接到您的数据库并生成 Prisma Client 以进行数据库访问。本教程将向您介绍 Prisma CLI、Prisma Client 和 Prisma 内省(Introspection)。
如果您正在从 Mongoose 迁移到 Prisma ORM,请参阅我们的“从 Mongoose 迁移”指南。
先决条件
为了成功完成本指南,您需要
-
访问具有副本集部署的 MongoDB 4.2+ 服务器。我们推荐使用MongoDB Atlas。
请确保您手头有数据库连接 URL(包含您的身份验证凭据)!如果您没有运行中的数据库服务器,只是想探索 Prisma ORM,请查看“快速入门”。
请参阅系统要求以获取确切的版本要求。
设置 Prisma ORM
首先,导航到包含 `package.json` 文件的项目目录中。
接下来,将 Prisma CLI 作为开发依赖项添加到您的项目中
npm install prisma --save-dev
如果您的项目包含多个带有 `package.json` 文件的目录(例如 `frontend`、`backend` 等),请注意 Prisma ORM 专门设计用于 API/后端层。要设置 Prisma,请导航到包含相关 `package.json` 文件的相应后端目录并在那里配置 Prisma。
现在您可以通过在 Prisma CLI 前面加上 `npx` 来调用它
npx prisma
请参阅安装说明,了解如何使用不同的包管理器安装 Prisma ORM。
接下来,使用以下命令创建 Prisma Schema 文件来设置您的 Prisma ORM 项目
npx prisma init --datasource-provider mongodb --output ../generated/prisma
此命令会执行以下几项操作
- 创建一个名为 `prisma` 的新目录,其中包含一个名为 `schema.prisma` 的文件,该文件包含 Prisma Schema 以及您的数据库连接变量和 schema 模型。
- 将 `datasource` 设置为MongoDB并将输出分别设置到自定义位置。
- 在项目根目录中创建 `.env` 文件,该文件用于定义环境变量(例如您的数据库连接)
请注意,`prisma init` 创建的默认 schema 使用 PostgreSQL 作为 `provider`。如果您没有通过 `datasource-provider` 选项指定提供程序,则需要编辑 `datasource` 块以改用 `mongodb` 提供程序
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}