node.js 교과서의 9장 익스프레스로 SNS 서비스 만들기를 진행해 보았다.
이메일로 가입된 계정을 카카오로 가입한 계정으로 팔로우 했을 때 팔로잉 수가 올라가며 팔로우 끊기를 눌렀을 때 팔로잉 수가 줄어들며 끊기게 된다.
시퀄라이즈의 관계 쿼리를 이용하여 remove(제거하다)Following(모델이름) - removeFollowing으로 팔로잉 되어있는 유저를 삭제해서 팔로잉을 끊을 수 있도록 구현하였다.
내정보 수정 버튼을 누르면 input text 박스와 닉네임 변경 버튼이 생성되며 닉네임 변경 버튼을 누를 시 닉네임이 변경된다.
시퀄라이즈의 update 메서드를 사용하여 구현하였다.
자신의 게시글에는 삭제하기 버튼이 나타나며 삭제하기 버튼을 누르면 게시글이 삭제된다.
시퀄라이즈의 destroy 메서드를 사용하여 구현하였다.
9장 익스프레스로 SNS 서비스 만들기를 진행하면서 로그인과 관련된 로직이 가장 어려웠던 것 같다. passport라는 편리한 패키지를 사용하지만 인증, 암호화 등 로직이 이해가 안되서 코드를 여러번 보게 되었다.