メインコンテンツにスキップ

MongoDB

データベースに接続し、データベースアクセス用の Prisma Client を生成することにより、既存の Node.js または TypeScript プロジェクトに Prisma ORM を追加する方法を学びます。次のチュートリアルでは、Prisma CLI、Prisma Client、および Prisma Introspection を紹介します。

ヒント

Mongoose から Prisma ORM に移行する場合は、Mongoose からの移行ガイドをご覧ください。

前提条件

このガイドを正常に完了するには、以下が必要です

  • Node.js があなたのマシンにインストールされていること(公式にサポートされているバージョンについては、システム要件を参照してください)

  • レプリカセット構成の MongoDB 4.2+ サーバーへのアクセス。 MongoDB Atlas を使用することをお勧めします。

    警告

    MongoDB データベースコネクタは、ネストされた書き込みをサポートするためにトランザクションを使用します。トランザクションにはレプリカセット構成が必要です。レプリカセットをデプロイする最も簡単な方法は Atlas を使用することです。無料で始められます。

データベース接続 URL (認証クレデンシャルを含む) を手元に用意してください!データベースサーバーが実行されておらず、Prisma ORM を試したいだけの場合は、クイックスタートを確認してください。

正確なバージョン要件については、システム要件を参照してください。

Prisma ORM をセットアップする

まず最初に、package.json ファイルが含まれているプロジェクトディレクトリに移動します。

次に、Prisma CLI を開発依存関係としてプロジェクトに追加します

npm install prisma --save-dev
注意

プロジェクトに package.json ファイルを含む複数のディレクトリ (例: frontend、backend など) が含まれている場合、Prisma ORM は特に API/backend レイヤーでの使用を目的として設計されていることに注意してください。Prisma をセットアップするには、関連する package.json ファイルを含む適切な backend ディレクトリに移動し、そこで Prisma を構成します。

これで、npx をプレフィックスとして Prisma CLI を呼び出すことができます

npx prisma
情報

別のパッケージマネージャーを使用して Prisma ORM をインストールする方法については、インストール手順を参照してください。

次に、次のコマンドで Prisma Schema ファイルを作成して、Prisma ORM プロジェクトをセットアップします

npx prisma init --datasource-provider mongodb --output ../generated/prisma

このコマンドはいくつかのことを行います

  • database connection 変数とスキーマモデルを含む Prisma Schema を含む schema.prisma というファイルを含む prisma という名前の新しいディレクトリを作成します。
  • datasource を設定しますMongoDBそして、出力をそれぞれカスタムの場所に設定します。
  • 環境変数 (データベース接続など) を定義するために使用される .env ファイルをプロジェクトのルートディレクトリに作成します
バージョン管理を使用していますか?

git などのバージョン管理を使用している場合は、生成されたクライアントをアプリケーションから除外するために、.gitignore に行を追加することをお勧めします。この例では、generated/prisma ディレクトリを除外します。

.gitignore
generated/prisma/

prisma init によって作成されたデフォルトのスキーマは、プロバイダーとして PostgreSQL を使用することに注意してください。datasource-provider オプションでプロバイダーを指定しなかった場合は、代わりに mongodb プロバイダーを使用するように datasource ブロックを編集する必要があります

prisma/schema.prisma
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}