반응형
Typegoose에서 하위 개체의 _id를 없애는 방법은 @prop({ _id: false})이다.
예시 클래스의 구성은 다음과 같다.
export class UserInfo {
@ApiProperty({ type: Date })
@IsDateString()
@IsOptional()
@prop()
playTime?: Date;
@prop({ type: () => userStrongInfo, _id: false })
@ApiProperty()
@IsDefined()
@Type(() => userStrongInfo)
public userPower: userStrongInfo;
@prop({ type: () => userBaseInfo, _id: false })
@ApiProperty({ description: '사용자 기본정보' })
@IsDefined()
@Type(() => userBaseInfo)
public userBase: userBaseInfo;
}
L8, L15에서 @prop에 _id:flase를 넣어주거나 빼주는 것으로 하위 개체의 _id생성 여부를 결정할 수 있다.
클래스 안에 다른 클래스를 속성으로 선언하고 싶을 때, Typegoose에서 @prop에 _id: false를 사용하지 않은 예)
자기 자신의 _id를 제외하고 userPower와 userBase도 _id를 가지고 있다.
클래스 안에 다른 클래스를 속성으로 선언하고 싶을 때, Typegoose에서 @prop에 _id: false를 사용한 예)
자기 자신의 _id만을 가지고 있다.
반응형
'개발 프레임워크 > Mongoose, TypeGoose' 카테고리의 다른 글
[Mongoose] strictQuery란? (Strict, Implicit $in) (0) | 2023.03.02 |
---|
댓글