Database/TypeORM
Relations 정리 OneToMany, ManyToOne
wam
2024. 8. 2. 20:39
@ManyToOne
import { 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 없이 정의할 수 있다.
@OneToMany
import { Entity, PrimaryGeneratedColumn, Column, OneToMany } from "typeorm"
import { Photo } from "./Photo"
@Entity()
export class User {
@PrimaryGeneratedColumn()
id: number
@Column()
name: string
@OneToMany(() => Photo, (photo) => photo.user)
photos: Photo[]
}
- 하나의 부모 엔티티가 여러 개의 자식 엔티티와 연결될 때 사용
- OneToMany는 ManyToOne 없이 존재 할 수 없다.