TypeORMに入門する
前回 takasehiromichiex.com カスケードを使用して関連オブジェクトを自動的に保存する方法 @OneToOne デコレータのオプションにカスケードを設定します。 src/entity/Photo.ts import { Column, Entity, OneToOne, PrimaryGeneratedColumn } from "typeorm"…
前回 takasehiromichiex.com オブジェクトとそのリレーションのロード PhotoとPhotoMetadataを一つのクエリで読み込みます。 src/index.ts import { AppDataSource } from "./data-source"; import { Photo } from "./entity/Photo"; AppDataSource.initiali…
前回 takasehiromichiex.com 関係の逆側 PhotoMetadataからPhotoへのリレーションは貼れていますが、Photoから PhotoMetadataへのリレーションは貼れていません。 リレーションを双方向にするためにエンティティを変更しましょう。 src/entity/Photo.ts impo…
前回 takasehiromichiex.com 1対1の関係を保存する データを保存してみましょう。 src/index.ts import { AppDataSource } from "./data-source"; import { Photo } from "./entity/Photo"; import { PhotoMetadata } from "./entity/PhotoMetadata"; AppDat…
前回 takasehiromichiex.com PhotoMetadataの作成 新しいモデルを作成してみます。 src/entity/PhotoMetadata.ts import { Photo } from "./Photo"; export class PhotoMetadata { id: number; height: number; width: number; oriientation: string; compre…
前回 takasehiromichiex.com Photoの更新 データベースからPhotoを取得して、更新して保存してみます。 src/index.ts import { AppDataSource } from "./data-source"; import { Photo } from "./entity/Photo"; AppDataSource.initialize() .then(async () …
前回 takasehiromichiex.com リポジトリの使用 今度は、リポジトリを使用するようにしてみます。 src/index.ts import { AppDataSource } from "./data-source"; import { Photo } from "./entity/Photo"; AppDataSource.initialize() .then(() => { console…
前回 takasehiromichiex.com Photoの作成 Photoを作成してデータベースに保存してみます。 src/index.ts import { AppDataSource } from "./data-source"; import { Photo } from "./entity/Photo"; AppDataSource.initialize() .then(() => { console.log("…
前回 takasehiromichiex.com DataSourceの作成 エンティティが完成したら、DataSourceを作成します。 src/data-source.ts import "reflect-metadata"; import { DataSource } from "typeorm"; import { Photo } from "./entity/Photo"; export const AppData…
前回 takasehiromichiex.com モデルの作成 ステップバイステップで進んでみましょう。 データベースの操作は、テーブルの作成から始まります。 テーブル = モデルです。 モデルを作成してみます。 src/entity/Photo.ts export class Photo { id: number; nam…
前回 takasehiromichiex.com モデルの作成 クイックスタートを使用したので、モデルは以下の通りになっています。 src/entity/User.ts import { Entity, PrimaryGeneratedColumn, Column } from "typeorm"; @Entity() export class User { @PrimaryGenerated…
概要 次何書こうかな〜とか思ったり、連載形式やめようかな〜とか思ったりしましたが、結局連載形式にしちゃいました。 今回はTypeORMにちゃんと入門しようと思います。 公式 typeorm.io TypeORMについて TypeORMは、NodeJS、Browser、Cordova、PhoneGap、Io…