현재 프로젝트 진행 중 typeorm select문을 실행하는데 파라메터 값이 이상하게 들어가는 문제가 있어 그걸 해결하고자 한다.
const like = await this.storeLikeRepository.createQueryBuilder('store_like')
.select()
.where('store_like.store = :id', {id: 22080004})
.andWhere('store_like.user = :id', {id: 2})
.getOne();
query: SELECT `store_like`.`id` AS `store_like_id`, `store_like`.`user_id` AS `store_like_user_id`, `store_like`.`store_id` AS `store_like_store_id` FROM `store_like` `store_like` WHERE `store_like`.`store_id` = ? AND `store_like`.`user_id` = ? -- PARAMETERS: [2,2]
분명 고정값으로 id를 입력했음에도 불구하고 parameters가 [2,2] 로 들어가고 있다.
현재 유저의 아이디값이 두번 들어가는 문제가 생기고 있다.
const like = await this.storeLikeRepository.createQueryBuilder('store_like')
.select()
.where('store_like.store = :store_id', {store_id})
.andWhere('store_like.user = :user_id', {user_id})
.getOne();
where 안에 변수 명을 바꾸어 주었더니 정상적으로 값이 들어간다.
나중에 시간이 될 때 typeorm의 실행 순서 관련 문서를 찾아봐야 겠다.