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

TypeScriptを使用して既存のMongoDBプロジェクトにPrisma ORMを追加する

既存のNode.jsまたはTypeScriptプロジェクトにPrisma ORMを追加する方法を、データベースへの接続とデータベースアクセス用のPrisma Clientの生成を通して学びます。このチュートリアルでは、Prisma CLIPrisma 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ファイルを持つ複数のディレクトリ(例:frontendbackendなど)が含まれる場合、Prisma ORMはAPI/バックエンド層での使用を目的として設計されていることに注意してください。Prismaをセットアップするには、関連するpackage.jsonファイルが含まれる適切なバックエンドディレクトリに移動し、そこでPrismaを設定してください。

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

npx prisma
情報

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

次に、以下のコマンドでPrismaスキーマファイルを作成し、Prisma ORMプロジェクトをセットアップします。

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

このコマンドはいくつかの処理を実行します。

  • prismaという新しいディレクトリを作成し、その中にschema.prismaというファイルが作成されます。このファイルには、データベース接続変数とスキーマモデルを含むPrismaスキーマが記述されています。
  • datasourceを以下に設定します。MongoDBそして、それぞれ出力をカスタムロケーションに設定します。
  • プロジェクトのルートディレクトリに.envファイルを作成します。このファイルは、環境変数(データベース接続など)の定義に使用されます。

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

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