코딩/생각&후기&기록

2024.04.23

춘 몽 2024. 4. 23. 18:11

오랜만에 글을쓴다.

오랜만에 밤을 샜다.. 그것도 코딩하느라..ㅎㅎ

뭐 요즘 새벽 4~5시쯤 자기도 해서 밤낮 바뀔조짐이 있긴했는데, 요즘 광인사 1차 프로젝트로 했던 팜팜 사이트 express로 만든 서버를 nest로 변환하는 작업을 하는 중이다.

아무래도 nest 수업들은거 실제로 써봐야할듯 싶기도 하고, 수업은 GraphQL에 대해서 하다보니 RestAPI에 대한 경험도 쌓아보고 싶어서 작업을 시작했었다.

그리고 오늘 아 이제는 어제 저녁이군.. TypeORM 때문에 엄청 스트레스 받으며 엄청나게 시간을 소비했다.

그래서 내 블로그 글에 오늘 갑자기 TypeORM 관련 게시글들이 막 생기기도 했다.. ㅎㅎ

 

이게 nest 수업에서는 그냥 1:1, 1:N, N:N 연결하는 방법만 알려주고, 게다가 GraphQL이다보니 연결된것들 중에 원하는 데이터만 잘 가져와지다보니 관계 개념에 대해서 깊게 안가르쳐 줬다.

그래서 나는 처음에 entities에 연결해주는것들은 그냥 join할때 쓸 수 있는 FK 개념인줄알았다.. 덕분에 dto 작성할때 그냥 entities에 있는것들 Pick 이나 Omit해서 만들었다보니 나중에 연결할때 썼던 녀석들로 데이터를 읽거나 해당 컬럼에 데이터를 쓰려는데 계속 오류가 나서 이것저것 막 알아봤는데 계속 못찾다가 결국 알아낸게.. 이게 FK 개념이라기보다는 통로의 개념으로 보는게 맞는것 같다.

그래서 해당 컬럼으로 데이터를 읽을때도 해당 컬럼으로 들어가서 연결된 테이블의 해당컬럼값에 맞춰서 사용하는 식이더라..

간단히 말하자면

user: input_user_id

같은 식인줄 알았는데,

user:{user_id: input_user_id}

이런식이었던거다..

 

진짜 이거 몰라서 dto에 타입을 해당 컬럼 설정되있는거 그대로 사용하는 바람에 코드 꼬이고 오류나고..
처음 방법처럼 데이터 넣으려는데 안들아가고.. 아주 쌩 쑈를 했다 진짜....ㅎㅎ

 

뭐 무튼간에 그렇게 밤새고 개고생한게 해결되니 그냥 쭉쭉 해서 지금까지 일단 기본적인 기능들 구현은 끝났다..

솔직히 나 포함 팀원 전부 코딩배우고 처음 했던 프로젝트라 코드가 난장판이다 ㅎㅎ

이걸 진짜 손볼까하다가도 굳이..라는 생각이 들어서 안했는데 이것때문에 나도 백엔드 코드 한번 갈아엎기도 했었다 ㅎㅎ

그랬다가 샤워하면서 다른 방법 생각나서 그대로 다시 갈아엎고... 며칠 고생했는데 끝이 보인다

 

이제 Swagger 작성해보고 코드들 정리 좀 하면 마무리 될 듯 싶다.

이것만 마무리하고 배포까지 끝나면 진짜 이력서 엄청 돌려봐야겠다..

'코딩 > 생각&후기&기록' 카테고리의 다른 글

2024.04.02  (0) 2024.04.02
20204.03.14  (0) 2024.03.14
2024.03.03  (1) 2024.03.04
2024.02.24~25  (1) 2024.02.26
2024.02.23 생각  (0) 2024.02.24