nodejs기반 뉴스피드 웹사이트 팀 프로젝트를 시작하였다.
우리는 취준생들이 서로 정보를 공유할 수 있는 취준생 커뮤니티 웹 사이트를 제작하기로 했다. 우리 프로젝트의 이름은 취업나침반 이다..!
아래는 대충 만들어본 초기의 ERD
이 아래는 초기에 생각한 와이어 프레임이다.
나는 Follow 기능과 지금까지 여러번 다뤄왔던 JWT.. AccessToken 재발급 api를 맡았다.
AccessToken 재발급은 갈고 닦았으므로 가볍게 할 수 있다!
Follow 기능은 처음 다뤄보는거라 어떻게 접근해야하나 고민을 했었는데,
그냥 DB에 Follow 테이블을 생성하고 follower와 following을 저장해주면 될 것 같았다.
그렇게 follow 요청 기능은 구현을 쉽게 하였는데..
follower 목록을 불러오는 api 제작중에 인스타그램처럼 자신의 계정을 비공개로 하고싶은 유저가 있을 수도 있겠다는 생각이 들었다.
그래서 유저 테이블에 locked라는 속성을 추가한다고 가정하고,
locked가 lock이라면 팔로워와 팔로잉중인 유저를 보기 위해서는
서로 팔로우중인 상태여야만 볼 수 있도록 구현하고 싶었다.
그래서 lock인 경우 follow 테이블에서 follower가 유저고 following이 보고자 하는 유저인 컬럼과, 그 반대인 컬럼을 뽑아와서 두 개가 모두 있을 때만 보여주도록 구현하였다.
오늘은 딱 여기까지 진행했는데, DB에서 follower와 following을 효과적으로 뽑아오고 싶어서 고민하느라 더 진행하지는 못했다..
내일은 좋은 방법이 생각나겠지! 내일의 나에게 맡겨야겠다!