common.service 의 cursorPaginate 일반화 할때 nextUrl 생성시 질문입니다.
374
投稿した質問数 2
common.service 의 cursorPaginate 일반화 관련 질문입니다.
nextUrl 생성할 때 아래와 같이 searchParams 를 생성하는데 이 부분은 일반화 할 수없는건가요?
if (nextUrl) {
for (const key of Object.keys(dto)) {
if (dto[key]) {
if (
key !== 'where__id__more_than' &&
key !== 'where__id__less_than'
) {
nextUrl.searchParams.append(key, dto[key]);
}
}
}
let key = null;
if (dto.order__createdAt === 'ASC') {
key = 'where__id__more_than';
} else {
key = 'where__id__less_than';
}
nextUrl.searchParams.append(key, lastItem.id.toString());
}
回答 3
0
제가 질문을 애매하게 했네요. 죄송합니다.
composeFindOption 처럼 nextUrl 생성 부분도 만들 수 있는지 궁금했었습니다.
예를 들어 현재 코드에서는 where__likeCount__more_than 라는 쿼리파라미터가 만들어 질때마다 netxUrl 에서 하나 하나씩 추가 시켜 줘야해서 이부분도 composeFindOption 처럼 자동 파싱이 가능한지 입니다.
1
composeFindOption과 똑같은 방식으로 말씀하시는게 맞을까요?
맞다면 완전 똑같이 사용하면 되는데 (스트링 값과 원하시는 값을 key value로 페어링해서 매핑하는 방식) 아무래도 이 질문이 아닐 것 같아서 제가 아직도 잘 이해를 못하는 것 같습니다. (제대로 이해 했다면 방식은 완전 똑같습니다)
예를들면 where는 기본으로 붙여주고 칼럼 이름은 언더스코어 뒤에 붙여주고 (이 부분은 위에서 말씀드린대로 key value로 정의해둔 다음 key 값을 기반으로 찾으면 되겠죠) more_than 같은 부분도 마찬가지로 말씀하신 composeFindOptions에서 하는 방식대로 구현하시면 됩니다.
혹시 제가 잘못 이해하고 있다면 다시 질문 부탁드립니다!
cascade 질문
0
38
1
@types/bcrypt 설치과정이 누락된것같습니다.
0
45
1
process.env port key 에러
0
45
1
추상화
0
48
1
[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상
0
93
2
where 키워드가 들어가는 메서드와 아닌 메서드
0
56
1
BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?
0
69
1
app.controller app.service 는 지워도되나요?
0
69
1
@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이
0
78
1
포트 3000에서 listen하는 곳까지 넘어가지 않습니다.
0
64
1
PickType 사용 시 `as const`를 꼭 사용해야 하나요?
0
102
2
socket connect 오류
0
96
2
강의를 들으면서 궁금한 점
0
97
2
DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?
0
58
2
커리큘럼 질문
0
98
2
put 요청은 언제
0
90
3
typeorm VS prisma
0
343
2
142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.
0
76
2
User 데코레이터 버그 수정 전달드립니다.
0
67
1
git 주소 부탁드립니다.
0
112
2
nest g resource 명령어 에러
0
99
2
로그인 엔드포인트 관련 질문
0
84
2
yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우
0
146
3
"흔히 사용되는 메서드" 강의 관련 질문입니다~
0
95
2

