Database/TypeORM
Relations 정리 One-to-One, @JoinColumn()
@One-to-Oneimport { Entity, PrimaryGeneratedColumn, Column } from "typeorm"@Entity()export class Profile { @PrimaryGeneratedColumn() id: number @Column() gender: string @Column() photo: string}import { Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn,} from "typeorm"import { Profile } from "./Profile"@Entity()export class User { @PrimaryGeneratedCo..
Relations 정리 OneToMany, ManyToOne
@ManyToOneimport { Entity, PrimaryGeneratedColumn, Column, ManyToOne } from "typeorm"import { User } from "./User"@Entity()export class Photo { @PrimaryGeneratedColumn() id: number @Column() url: string @ManyToOne(() => User, (user) => user.photos)}여러 개의 자식 엔티티가 하나의 부모 엔티티와 연결될 때 사용ManyToOne 관계에만 집중하고 싶다면 관련 enity에 OneToMany 없이 정의할 수 있다. @OneToManyimport { Entity, PrimaryGenerate..
EntityRepository - deprecated 되었다.
TypeORM 0.3.0 부터 EntityRepository가 deprecated 되었다. 커스텀 Repository으로 구현하기https://stackoverflow.com/questions/71557301/how-to-workraound-this-typeorm-error-entityrepository-is-deprecated-use-repo/72533424#72533424// user.repository.ts@Injectable()export class UsersRepository extends Repository { constructor(private dataSource: DataSource) { super(UsersEntity, dataSource.createEntityManager())..
TypeORM의 Entity
TypeORM EntitiesEntities - 데이터 베이스에 저장되는 데이터의 형태를 보여주는 모델 같은 것이다.DB table (Mongo DB를 사용하는 경우 collection)에 매핑GraphQL에서 사용한 Entity와 비슷하다. graphql의 Entity@objectType() 자동으로 스키마를 빌드하기 위해 사용 TypeORM의 EntityTypeORM의 Entity는 DB에 저장을 해줌데이터베이스 테이블을 객체지향적으로 표현하는 개념Entity는 데이터베이스 테이블의 구조를 정의하고 테이블의 각 열은 Entity 클래스의 속성으로 표현된다.Entity 를 통해 TypeORM은 데이터베이스 테이블을 생성하고 관리한다.SQL 쿼리 없이도 데이터베이스와 상호 작용할 수 있다.엔터티를 사..