과거 프로그래밍 자료들/프로젝트

[영어단어장 version2.0] 단어장 기능 및 로그인 보완, sns 기능 추가(pm2 stopped)

평부 2022. 9. 8. 11:46

 

* 영어 단어장 만들기 version 2

 

[개선점]

* version 1의 단점

- 기존 : js 파일에 mysql 쿼리를 등록, 다른 방법은 없을까? 

▶ 변경 :  시퀄라이즈 사용 (장점 : 데이터 삭제 및 테이블 생성 시 유용)

▶ 변경 : 특히 join등을 통해 user의 정보로 posts나 words의 정보를 가져올 수 있음

 

* 기존: html 내에서 작업 중 일부 데이터에 바로 적용하는 것에 어려움 겪음

▶ 변경 :  nunjucks 사용해 적용해보기({{}}를 통해 변수의 값을 넘길 수 있음)

 

* 기존 : 로그인, 회원가입 : JWT토큰 

변경 :  bcrypt로 비밀번호 설정 및 Passport 사용 

▶ 변경 :  카카오톡 로그인 및 로그인/비로그인 여부 미들웨어 설정함

 

* 변경된 단어장 기능

- 기존 : 단어 체크박스 선택 시 개별 항목들만 선택 가능

▶ 변경 : "모든 체크박스 체크" 항목 추가

- 기존 : 단어 삭제 누를 경우 status만 "D"로 변경되고 최종 삭제되지 않음

▶ 변경 : 단어 삭제 후 하단의 "삭제된 단어 확인하기"에서 최종 단어 삭제 가능

 

* SNS 기능 추가

- 참고한 강의 :  https://www.inflearn.com/course/%EB%85%B8%EB%93%9C-%EA%B5%90%EA%B3%BC%EC%84%9C/dashboard

 

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지 - 인프런 | 강의

노드가 무엇인지부터, 자바스크립트 최신 문법, 노드의 API, npm, 모듈 시스템, 데이터베이스, 테스팅 등을 배우고 5가지 실전 예제로 프로젝트를 만들어 나갑니다. 최종적으로 클라우드에 서비스

www.inflearn.com

 

- 사진 업로드, 팔로잉 & 팔로워 사용 시 sequelize 다대다 관계에 대해 알 수 있었음

- 내 프로필에서 팔로잉 취소, 닉네임 변경 시 sequelize "as"의 중요성을 알 수 있었음

 

sequelize 정리 1(팔로잉, 팔로워) : https://ba-gotocode131.tistory.com/196?category=1058270 

 

sequelize belongsToMany 내 as 시퀄라이즈 사용

* 상황 : User함수를 Followers, Followings로 as로 명칭 정함, through를 통해 "Follow" 모델을 생성 = (sql문: create Follow) - as에 적힌 문자를 통해 다양한 시퀄라이즈 생성(belongsToMany 일 때만 가능) ex..

ba-gotocode131.tistory.com

 

sequelize 정리 2(좋아요, 좋아요 취소) : https://ba-gotocode131.tistory.com/197?category=1058270 

 

SNS서비스 좋아요 버튼 및 좋아요 취소 버튼 만들기

* 결과 - mysql에서 좋아요 누르기 전에는 Like 테이블이 빈칸 - 자신이 작성한 글에 좋아요를 누르면 Like 테이블에 입력되지 않음 - 좋아요 버튼을 누르면 Like 테이블에 값이 들어감 - 좋아요 취소

ba-gotocode131.tistory.com

 

 

* 카카오톡으로 로그인

 

* (다른 계정 로그인)로그인 및 단어장 검색

 

* 단어장 내 단어들 각자 체크 및 모두 체크, 삭제 시 최종적으로 삭제

 

* sns 추가 팔로잉 및 언팔로잉, 닉네임 수정 

 

* 게시글 추가(사진 첨부), 태그로 검색하기