05PrismaのセットアップEringi_V32021.09.08に更新このチャプターの目次このチャプター完了時のソースコードGraphQLの足回りが整ったので、次はDBの足回りを整えていきます。DBはPostgresを使用します。postgres:DBを起動しておきましょう。up必要な依存をインストールします。prisma以降は、Prismaのチュートリアルを参考に進めます。https://www.prisma.io/docs/getting-started/setup-prisma/start-from-scratch/relational-databases-typescript-postgresPrismaを初期化します。init.envにDBのURLを記載します。DATABASE_URL="postgresql://eringiv3:password@localhost:5432次に、Prismaのスキーマを定義します。ここで定義した内容によって、後々使用するTypeScriptのクライアントが生成されます。今回はTodoアプリなので、TodoモデルとUserモデルを用意します。pendingの2種類とし、enumで定義しておきます。Todo[]}スキーマの定義ができたので、マイグレーションします。マイグレーションが完了したら、TypeScript用のPrismaクライアントを用意します。@prisma/clientこれでTypeScriptからDBを操作するための準備が整いました。シードスクリプトを書いてPrismaクライアントを体験しましょう。Clientではスキーマで定義したモデルごとにCRUDのAPIのメソッドが生えているのでとても直感的にクエリを書くことができます。prisma/seed.tsDBの状態をみてみましょう。PrismaにはブラウザからDBを見るためのツールが付属しています。studioTodoやUserのデータが作成されているのが確認できます。これでPrismaのセットアップが完了しました。