기업협업 중 일부 내용에 대해서만 발췌하고 전체적인 내용은 가져올 수 없다는 점을 먼저 고지함
django로 치면 일종의 models.py 만들기
synchronize: true,
entities: [
Cat,
Order,
Attachment,
SafeRate
]
}),
CatsModule,
OrderModule,
SafetyRatesModule,
@Module({
imports: [TypeOrmModule.forFeature([Order, Attachment])],
providers: [OrderResolver, OrderService],
exports: [OrderService]
enum AttachmentType{
GOODS = "GOODS"
}
registerEnumType(AttachmentType, {name : 'AttachmentType'})
@Entity()
@InputType('AttachmentInputType', {isAbstract:true})
@ObjectType()
export class Attachment extends CoreEntity{
@Field(type => AttachmentType)
@Column( {type : 'enum', enum : AttachmentType})
type: AttachmentType;
@Field(type => Int)
@Column()
size: number;
@Field(type => Date)
@Column()
workingTime: Date;
해야하는 내용 중 1:N 관계를 갖는 테이블이 각 하나씩 있었는데 파이썬에서는 정의하지 않았던 N:1 관계가 여기서는 코드로 구현 되어서 조금 신기했다.
1. 1쪽
@Field(type => [Attachment])
@OneToMany( type => Attachment, attachment => attachment.order)
attachments: Attachment[];
@Field(type => Order)
@ManyToOne(type => Order, order => order.attachments, {onDelete:"CASCADE"})
order: Order;
}
협업에 관한 내용이라 자세한 위의 예시까지는 쓸 수 없어 부분만 발췌하였는데 검색하면 정말 많은 결과물들이 예시로 나온다.
참고 사이트 그 중 한 곳
주로 문법 오류
모델링은 정말 기업 협업 내용과 밀접한 내용이라 공개가 어렵지만 굳이 적어놓자면
1. 모델링은 이상 없이 주어진 자료에 맞게 수행 됨
2. 특정 테이블이 연관성이 없는 것 제대로 이해한 것이 맞음
3. 이넘 테이블의 경우는 모델에서 처리해줬어야 했다.
이 정도로 볼 수 있을 것 같다.