length에서 min값만 설정하고 싶을 때 max 없이 validationOptions을 어떻게 전달할 수 있나요..?
343
작성한 질문수 6
length에서 max값을 전달 안해주고 min만 설정하고 싶을때
if(args.constraints.length===2){
} else}{
}
여기서 else 가 실행되어야 하는데 max 값 없이 validationOptions만을 전달하면 validationOptions가 두번째 인자로 전달되는 것 아닌가요..? 이렇게 하면 에러 나는데.. max 값에 undefined나 null을 넣어도 안되는 것 같습니다. 어떻게 max 값 없이 validationOptions를 실행할 수 있나요..?
답변 2
0
시간이 좀 지나서 이미 찾아서 사용중이실수도 있고 보실진 모르겠습니다만
경우에 따라서
@MinLength() 와 @MaxLength() 를 사용하실 수 있고,
@Length(0, max값, {})
@Length(min값, Number.MAX_VALUE, {})
등으로도 사용하실 수 있을 것 같습니다.
0
저도 강의 보면서 테스트 해 보니깐
질문자님 말씀대로 구현 하려면 (max를 지정하지 않은채로 @Length() 설정 )
@Length(2, undefined, {}) 으로 추가하는 경우
(args: ValidationArguments) 로 받아오는 인자의 args.constraints 가 [2, undefined] 이더라구요
max가 필요치 않은 조건이라면 @MinLength() 를 사용하는게 의도된 방식일 것 같지만, @Length() 하나만 사용해서 일반화 해서 사용하고 싶다면
이런식으로도 해결 할 수도 있을 것 같습니다!!
import { ValidationArguments } from 'class-validator';
export const lengthValidationMessasge = (args: ValidationArguments) => {
const isOnlyMin =
args.constraints.length < 2 || args.constraints[1] === undefined;
if (isOnlyMin) {
return `${args.property}는 최소 ${args.constraints[0]} 글자를 입력해주세요`;
} else {
return `${args.property}는 ${args.constraints[0]} ~ ${args.constraints[1]} 글자를 입력해주세요`;
}
};
이 때 constraints가 0개나 1개인 케이스가 가능할지는 모르겠지만요
0
안녕하세요!
혹시 Min annotation을 찾고 계시는게 맞을까요?
@Min(최소값) <- 이렇게 사용 할 수 있습니다.
예제 링크 보내드립니다.
https://github.com/typestack/class-validator?tab=readme-ov-file#validating-promises
감사합니다!
cascade 질문
0
40
1
@types/bcrypt 설치과정이 누락된것같습니다.
0
49
1
process.env port key 에러
0
47
1
추상화
0
50
1
[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상
0
101
2
where 키워드가 들어가는 메서드와 아닌 메서드
0
57
1
BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?
0
72
1
app.controller app.service 는 지워도되나요?
0
70
1
@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이
0
79
1
포트 3000에서 listen하는 곳까지 넘어가지 않습니다.
0
68
1
PickType 사용 시 `as const`를 꼭 사용해야 하나요?
0
102
2
socket connect 오류
0
98
2
강의를 들으면서 궁금한 점
0
97
2
DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?
0
60
2
커리큘럼 질문
0
100
2
put 요청은 언제
0
90
3
typeorm VS prisma
0
351
2
142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.
0
78
2
User 데코레이터 버그 수정 전달드립니다.
0
67
1
git 주소 부탁드립니다.
0
113
2
nest g resource 명령어 에러
0
99
2
로그인 엔드포인트 관련 질문
0
85
2
yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우
0
148
3
"흔히 사용되는 메서드" 강의 관련 질문입니다~
0
95
2





