-> likes 컬럼에다가 게시물Id를 배열 형태로
저장하여 좋아요한 게시물을 관리하기 위함
...
const likePosts = user.likePosts; // 문자열 형태의 likePosts 가져옴
const likePostsArr = likePosts ? JSON.parse(likePosts) : [];
// likePostsArr이 존재하면 배열형태로 저장 아무것도 없으면 빈배열로 저장
const isExist = likePostsArr.filter((likePost) => likePost == postId);
// 배열안에 postId가 존재하는 지 확인
if (!isExist.length) { // 없으면
likePostsArr.push(Number(postId));
// 숫자형태의 postId를 배열에 넣어서 추가해줌
const likePostsArrToStr = JSON.stringify(likePostsArr); // 배열 문자열화
await Posts.update({ likes: likes + 1 }, { where: { postId } });
await Users.update(
{ likePosts: likePostsArrToStr },
{ where: { userId } }
);
return res.status(200).json({ message: "좋아요가 추가 되었습니다" });
...
유지보수의 측면은 전혀 고려하지 않은 듯한..
월요일에 튜터님께 여쭤보고 리팩토링 해야겠다.