내일배움캠프 TIL

뉴스 피드 프로젝트 SA작성 본캠프 12/23

parkcw0325 2024. 12. 23. 21:14

웹서버 반에서 새롭게 시작하는 프로젝트이다.

 

 

뉴스 피드란? 내 게시물을 포함한 모든 게시물을 볼 수 있는 공간

즉 블로그가 될 수도 있고, 인스타, 페이스북 같은 SNS가 될 수도 있다.

 

저희가 구상한 뉴스 피드는 게임과 관련된 소식들을 플랫폼 별로 확인할 수 있는 뉴스 피드 사이트를 구상하였다.

 

  • 프로젝트 명 : 게임의 민족(게임소식을 배달하는 의미)
  • 소개
    • 한 줄 정리 : 다양한 게임소식(모바일, PC, 콘솔)들을 전달하는 뉴스피드

 

구상한 와이어 프레임

 

처음으로 구상한 와이어 프레임에는 모바일, PC, 콘솔로 탭을 나누어서 해당 플랫폼에 관한 새로운 뉴스들이나 본인의 생각 등을 게시글로 작성할 수 있게 구성하였다. 또 각 게시글에 댓글을 추가로 남길수도 있고, 개인 프로필에 들어가서 프로필 수정도 가능하다.

 

팀원들끼리 상의해서 만든 데이터테이블이다.

 

유저와 게시글, 댓글, 좋아요는 1:N의 관계이고

게시글과 댓글, 좋아요는 1:N의 관계로 설정하였다.

한명의 유저가 하나의 게시글에 좋아요를 중복으로 되는 것을 방지하기 위하여 post_id와 user_id를 묶어서 복합 유니크 키로 설정하였다.

 

내가 담당한 api의 명세서로는

get 매서드 My 프로필 확인 /api/profile authorization -> { ”message”:”프로필 조회가 완료되었습니다.” }

 

patch 매서드 My 프로필 수정 /api/profile authorization {
”email”:”4321rewq@gmail.com”,
”password”:”4321rewq”,
”nickname”:”계엄령”
} -> { ”message”:”프로필 수정이 완료되었습니다.” }

 

뒤에 여러 게시글 조회 등이 있다.

 

내일부터 api를 작성하면서 더 상세하게 과정을 서술하겠다.

 

오늘 프로젝트 시작에 처음 세팅부분에 문제가 있었는데

 

한명의 유저는 하나의 게시글 당 좋아요를 한 번만 가능하게 하는 데이터베이스 구성을 하지 못하였는데

위의 사진처럼 복합 유니크 키 설정이라는 방법으로 

postId 와 userId를 하나의 유니크 키로 설정하여 한명의 유저는 하나의 게시글 당 좋아요를 한 번만 가능하게 하였다 !