MongoDBとTypeScriptを使ってPrisma ORMをゼロから始める
Prisma ORMをMongoDBデータベースに接続し、データベースアクセス用のPrisma Clientを生成することで、Node.jsまたはTypeScriptプロジェクトをゼロから作成する方法を学びます。このチュートリアルでは、Prisma CLIとPrisma Clientを紹介します。
必要条件
このガイドを正常に完了するには、以下が必要です。
-
お使いのマシンにNode.jsがインストールされていること(公式にサポートされているバージョンについてはシステム要件を参照)
-
レプリカセットデプロイメントを備えたMongoDB 4.2+サーバーへのアクセス。MongoDB Atlasの使用を推奨します。
データベースの接続URLを手元に用意しておいてください。データベースサーバーが実行されておらず、Prisma ORMを試してみたいだけであれば、クイックスタートを参照してください。
正確なバージョン要件については、システム要件を参照してください。
プロジェクトセットアップの作成
まず、プロジェクトディレクトリを作成し、その中に移動します。
mkdir hello-prisma
cd hello-prisma
次に、TypeScriptプロジェクトを初期化し、Prisma CLIを開発依存関係として追加します。
npm init -y
npm install prisma typescript tsx @types/node --save-dev
これにより、TypeScriptアプリの初期設定を含む`package.json`が作成されます。
次に、TypeScriptを初期化します。
npx tsc --init
これで、`npx`を前に付けてPrisma CLIを呼び出すことができます。
npx prisma
次に、以下のコマンドで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`プロバイダーを使用する必要があります。
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}