댓글에 좋아요 수를 count 하는 기능을 구현하고자 한다.
처음에는 좋아요 테이블을 따로 만들어서,
좋아요를 누르면 테이터를 save 하고, 좋아요를 취소하면 데이터를 delete 하는 방식으로 사용했었다.
하지만 기록을 남겨두는 편이 좋다고 하여, 원래 하던 방법에서 바꾸었다.
boolean 타입의 필드를 하나 새로 생성한다.
좋아요 테이블에 데이터가 없으면 우선 삽입한다.
그리고 원래 테이블에 데이터가 있었다면 boolean 타입의 필드가 true인지, false인지 구분한다.
그리고 false 였다면 true로 변경해준다.
그러면서, 해당 댓글의 count 수를 + 1 해준다.
좋아요 테이블에 데이터가 없는 경우는 예외를 던진다.
데이터가 있다면, boolean 타입의 필드가 true인지 false 인지 확인한다.
true라면 false로 변경해준다.
그리고 해당 댓글의 count 수를 - 1 해준다.
기록을 남기는 것이 중요하다는 점을 알게 되었다.
그러면서, boolean 타입의 필드를 생성하여 기록을 남기게 되었다.
기록을 잘 남기는 편이 중요하다면, 좋아요를 추가한 시간과, 변경을 감지할 변경 시간의 기록도 함께 남기는 것이 좋을지 생각해봐야겠다.
많은 도움이 되었습니다, 감사합니다.