누군가 한 번 나간 룸에서 다시 룸을 생성할 수 없던 문제
채팅방을 나가면 데이터베이스에서는 나간 사람이 left 라는 column 에 'left' 라는 문자열이 들어가도록 했다. 방을 생성할 때 조건을 보면 myRooms 와partnerRooms 를 모두 가져오고 그 방들 중에서 공통된 roomId 가 있다면, 즉 둘이 함께 들어가 있는 방이 존재한다면 방을 생성하지 않는 걸로 설정했다. 이 로직의 문제점은 누군가가 'left' 를 했더라도 방을 새롭게 만들어야 하는데 이미 데이터베이스에서는 둘 다 같은 방 id 에 있는 걸로 돼 있으니 (두 유저가 모두 나가야만 해당 roomId 와 그와 관련된 데이터베이스가 모두 사라지도록 하는 로직으로 작성했기 때문) 새롭게 방을 생성하지 못했던 것이다. 그래서 myRooms 과 partnerRooms 을 가져올 때 본인이 'left' 하지 않은 방들만 가져오도록 설정했다.




그런데 위에서도 문제가 발생했다 [Op.ne]: 'left' 가 먹지 않은 것이다. 혹시 몰라 아래 코드로 작성했는데 밑의 코드는 정상작동한다. 그래서 밑의 코드로 리팩토링을 진행했으나 아직은 위의 코드가 안 되는 이유를 제대로 파악하지 못했다.

'코드스테이츠 > 코드스테이츠 @ 팀 프로젝트' 카테고리의 다른 글
[코드 스테이츠 / Final-Project] 151일차, "로컬환경에서 에러가 나는지 살펴보고 머지할 것" (0) | 2021.12.17 |
---|---|
[코드 스테이츠 / Final-Project] 150일차, "메인페이지 디테일 살리기" (0) | 2021.12.16 |
[코드 스테이츠 / Final-Project] 148일차, "되돌리기의 함정" (0) | 2021.12.14 |
[코드 스테이츠 / Final-Project] 147일차, "에러가 안 나는게 에러같아" (0) | 2021.12.13 |
[코드 스테이츠 / Final-Project] 146일차, "이전의 에러 해결은 잘못된 방법이었다" (0) | 2021.12.12 |