class PasswordChangeView(APIView):
permission_classes = [IsAuthenticated]
# 패스워드 변경
def put(self, request, username):
user = get_object_or_404(User, username=username)
if request.user != user:
return Response({"error": "권한이 없음."}, status=status.HTTP_403_FORBIDDEN)
current_password = request.data.get('current_password')
new_password = request.data.get('new_password')
if not user.check_password(current_password):
return Response({"error": "현재 비밀번호가 올바르지 않습니다."}, status=status.HTTP_400_BAD_REQUEST)
# 새로운 비밀번호를 해싱
hashed_password = make_password(new_password)
# 해싱된 비밀번호를 저장
user.set_password(hashed_password)
user.save()
return Response({"message": "비밀번호가 변경되었..."}, status=status.HTTP_200_OK)
class ProfiledeleteView(APIView):
permission_classes = [IsAuthenticated]
#회원 탈출
def delete(self, request, user_id):
user = get_object_or_404(User, pk=user_id)
if request.user != user:
return Response({"error": "권한이 없습니다."}, status=status.HTTP_403_FORBIDDEN)
user.delete()
return Response({"message": "회원 탈퇴 성공하셨습니다"}, status=status.HTTP_204_NO_CONTENT)
일단 백 만 해서 템플릿도 해야함
그리고 Code Formatter 이걸로 내가 작성한 코드를 정리 할수가있다
pip install black
black {파일 또는 폴더 이름}
하면 끝이다