안녕하세요 주갬입니다~!
게시글 좋아요 기능을 이어서 포스팅 하도록 하겠습니다. 오늘은 데이터베이스 구성에 대한 설명입니다.
저는 좋아요 기능 관련 테이블의 컬럼을 다음과 같이 구성했습니다.
id는 auto_increment 컬럼으로, 인덱스값으로 사용됩니다.
board_no는 게시글의 id값을 저장합니다.
user는 현재 로그인하고 있는 사용자의 id값을 저장합니다.
like_no, dislike_no, check에 대한 설명은 밑에 상황별로 나누어 자세히 설명드리겠습니다.
1. 로그인 후, 페이지에 처음 들어가 아직 좋아요 싫어요를 누른 적이 없다면
ajax를 이용해 $(document).ready()에서 row를 생성해줍니다. -> 이 부분은 수정이 필요
1. 최초로 좋아요 / 싫어요를 선택
like_no += 1 , check += 1 disllike_no += 1, check += 1
좋아요(싫어요)가 최초로 선택되면 like_no에 +1을 해주어 카운팅을 해주고,
선택이 이미 되었다는 것을 표시해주기 위해 check에도 +1을 해줍니다.
2. 좋아요 / 싫어요 선택 이후 다른 방향으로 선택 변경
최종 선택이 like, 현재 선택이 dislike :
dislike의 check가 1이면 (이미 선택이 되어있던 상태이면),
dislike_no를 -1, like_no를 +1 해줍니다.
최종 선택이 dislike, 현재 선택이 like :
like의 check가 1이면 (이미 선택이 되어있던 상태이면),
like_no를 -1, dislike_no를 +1 해줍니다.
//취소기능?
다음과 같이 데이터베이스의 스키마를 구성해보았습니다.
다음 글에서 위의 스키마대로 데이터베이스를 생성하고 그 외 백단 작업도 진행하도록 하겠습니다.
'Laravel Blog' 카테고리의 다른 글
[Back] Laravel Middleware - Auth (1) (0) | 2021.06.01 |
---|---|
[Back] 게시글 좋아요 기능 만들기 - 3. 모델과 마이그레이션 (0) | 2021.05.26 |
[Front] 게시글 좋아요(Like / Dislike) 기능 만들기 - 1. 뷰 만들기 (0) | 2021.05.25 |
Laravel 시간이 다르게 출력될 때 (timezone설정) (0) | 2021.05.25 |
Front) Laravel blade에 관한 설명 (0) | 2021.05.24 |