@Column({ nullable: true, transformer: new BcryptTransformer() })
ci: string;
위의 코드의 nullable에서 아래와 같은 에러가 계속 발생하였다. 왜일까?
내가 만든 BcryptTransformer에서 Partial로 ValueTransformer을 implements해서 사용하고 있어서
ValueTransformer 내부에 구현되어있던 from, to 메소드에서 to 메소드만 쓰고 싶었기에 Partial type 사용을 했었다.
근데 nullable에서 에러가 났다.
알고보니 Partial Type으로 ValueTransformer을 사용하더라도 그 안에 있는 형식은 맞춰서 써줘야 한다는 것이다.
그래서 from 메소드를 형식적으로 구현해주니 nullable : true에서 발생하는 위의 에러가 해결되었다.
export class BcryptTransformer implements Partial<ValueTransformer> {
async to(ci: string): Promise<string> {
if (!ci) {
return null;
}
const hashedCi = await hash(ci);
return hashedCi;
}
async from(ci: string): Promise<string> {
if (!ci) {
return null;
}
return ci;
}
}
'Backend > PostgreSQL and TypeORM' 카테고리의 다른 글
zero-length delimited identifier at or near ''" (0) | 2024.01.13 |
---|---|
QueryFailedError: relation DB이름 does not exist (2) | 2023.10.10 |
SQL 쿼리문이 Run 실행환경에서 안나올때 (0) | 2023.08.29 |
엔티티와 SQL문의 관계 (0) | 2023.08.23 |
FindOneOptions 안의 where 그리고 relations (0) | 2023.08.22 |