{
  "$type": "site.standard.document",
  "canonicalUrl": "https://blog.nove-b.dev//posts/do-crud-nestjs-mysql",
  "path": "/posts/do-crud-nestjs-mysql",
  "publishedAt": "2023-03-15T00:00:00.000Z",
  "site": "at://did:plc:2atly2y5kfyjcj5zap6pv4wd/site.standard.publication/3mmxeqr2tcb2k",
  "tags": [
    "crud",
    "mysql",
    "nestjs"
  ],
  "textContent": "前回の修正と準備\n\n前回testというEntityを作ったけど、わかりにくくなるのでsampleに変更した。\n\nモジュールの作成\n\nまず上記コマンドを使用し、モジュールを作る。なぜモジュール化するかを調べると散らかるので、また別の機会に。\n\n公式ドキュメントに\n\n> 対応するモジュール ディレクトリ内のドメインの近くに作成することをお勧めします。\n\nと記載されているので、sample.entity.tsを作成したサンプルモジュール内に移行する。\n\n必要なファイルを作成する\n\ncontrollerとserviceを作成する。\n\ncontrollerはルーティングを指定し、serviceは処理の記述を書くファイルという認識。\n\n最後に、DBと疎通操作するためのRepositoryを作成する。なぜか作成するコマンドが用意されていないようなので、自作する。\n\n各ファイルを作成する\n\nsample.repository.ts\n\n> リポジトリはEntityManagerと同じですが、その操作は具象エンティティに限定されます。EntityManagerを介してリポジトリにアクセスすることができます。\n\n上記を読んでもなんのことかわからない。\n\nsample.controller.ts\n\nこれは先述した通り、ルーティングを指定するもの。\n\nsample.service.ts\n\nこれは先述した通り、処理を指定するもの。\n\nsample.module.tsにまとめる\n\nこれで諸々処理は完了した。\n\nC:Create\n\nR:Read\n\n全件取得\n\n上記にアクセスすると、下記が取得できる。\n\nId指定で取得\n\n上記にアクセスすると、下記が取得できる。\n\nU:Update\n\nD:Delete\n\nこれでCRUD処理はできた。 ただ現状、すべてこちらで用意したデータを保存しているので、次はそこを触ってみる。",
  "title": "NestJsとMySQLでCRUD操作を行ってみた"
}