본문 바로가기

전체 글89

13주차 WIL (djangorestframeworksimple-jwt 커스텀) 먼저 커스텀을 안하고 기본 simple-jwt를 사용하는 상태에서 로그인 할 때 아이디나 비밀번호를 틀린다면? 이런 메세지가 return 되는데 솔직히 이건 사용자 입장에서는 무슨소리지... 할 것이다. 그래서 이걸 커스텀 해 보았다. 먼저 serializers.py에 해당 코드를 추가한다. class CustomTokenObtainPairSerializer(TokenObtainPairSerializer): # jwt payload 커스텀 username_field = get_user_model().USERNAME_FIELD token_class = RefreshToken default_error_messages = {"no_active_account": _("아이디 or 비밀번호를 확인해주세요. ")}.. 2022. 12. 4.
2022-12-02 TIL (drf serializer extra_kwargs) 오늘은 시리얼라이저에 extra_kwargs를 사용하여 error message를 커스텀해보았다. 먼저 extra_kwargs가 없는 경우, (username을 입력하지 않았을 경우로 테스트 하였다.) 이렇게 에러메세지가 뜬다. 하지만 있는 경우는 일단 코드는 이렇게 짠다. class UserSerializer(serializers.ModelSerializer): # 회원기능 serializer class Meta: model = User fields = ('username', 'term_agree', 'email', 'nickname', 'nickname', 'address', 'gender', 'height', 'weight', 'date_of_birth', 'password', 'password2'.. 2022. 12. 4.
2022-12-01 TIL (일정기간 지나면 DB 삭제) 인터넷을 이용하는 99%의 사람들이라면, 이런 메일을 본 적이 있을 것이다. '장기 미 이용자 계정 삭제 알림' 이라던가 비슷한 다른 메일을 받아본 적이 있을 것이다. 오늘은 해당 기능을 현재 진행하고 있는 팀프로젝트에 적용해보기로 했다. 먼저 AbstactBaseUser에는 마지막 로그인 시간이 담기는 Last_login 필드가 자동으로 삽입되어 있다. 먼저 users앱 안에 Delete_old_user.py 파일을 생성해준다. from django.core.management.base import BaseCommand, CommandError from users.models import User from datetime import datetime, timedelta class Command(Base.. 2022. 12. 4.
2022-11-30 TIL (웹소켓이란?) WebSocket이란 Transport protocol의 일종으로 쉽게 이야기하면 웹버전의 TCP 또는 Socket이라고 이해하면 된다. WebSocket은 서버와 클라이언트 간에 Socket Connection을 유지해서 언제든 양방향 통신 또는 데이터 전송이 가능하도록 하는 기술이다. Real-time web application구현을 위해 널리 사용되어지고 있다. (SNS어플리케이션, LoL같은 멀티플레이어 게임, 구글 Doc, 증권거래, 화상채팅 등) 사용이유 웹어플리케이션에서 기존의 서버와 클라이언트 간의 통신은 대부분 HTTP를 통해 이루어 졌으며 HTTP는 Request/response기반의 Stateless protocol이다. 즉, 서버와 클라이언트 간의 Socket connection같.. 2022. 11. 30.
2022-11-29 TIL (구현해 볼 기능들) 지금까지 팀 프로젝트들을 하면서 보통 나는 유저정보 관리 쪽을 맡아서 해 왔는데, 이번에는 평소보다 기간이 훨씬 긴 한달짜리 최종 프로젝트이다 보니 아무래도 그동안 못해보았던 기능들을 해보고 싶은 욕심이 생긴다. 그래서 한번 적어보았다. 1. 비밀번호 찾기 기능 ( email 인증도 가능하다면 함께) 2. 일정기간동안 회원이 접속 안하면 이메일 발송 후 계정 삭제 3. 회원가입 때 약관동의 추가 4. 유저 신고 기능 - 다른 유저를 신고하면 admin 계정에 연락이 옴, admin 계정이 판단 후 계정 비활성화 가능 5. 다른 유저와 실시간 메신저 기능 ( 솔직히 이건 불가능할것 같다..) 6. 팔로우 팔로워 기능에 동의 비동의 기능 추가 7. 내 게시글에 댓글이 달리거나 좋아요가 달린다면 알람 수신 이.. 2022. 11. 29.
13주차 WIL 이번주는 DRF, 시리얼라이저, JWT, 자바스크립트를 이용하여 팀원들과 팀 프로젝트를 진행하였다. 먼저, 백엔드의 기본이라고 할 수 있는 기본 지식들을 짚고 넘어가였다. 2022-11-21 TIL (gunicorn, nginx) (tistory.com) 2022-11-21 TIL (gunicorn, nginx) WSGI 란? 파이썬 애플리케이션이(파이썬 스크립트) 웹 서버와 통신하기 위한 인터페이스이다. 웹서버에서의 요청을 해석하여 파이썬 애플리케이션 쪽으로 던지는 역할을 수행한다. nginx 란? Nginx jundevlog.tistory.com 2022-11-24 TIL (Web Server란? Application Server란?) (tistory.com) 2022-11-24 TIL (Web Se.. 2022. 11. 29.