수요일인데 수요일인거 같은수용ㄹ

수요일인데 수요일인거 같은수용ㄹ

·

1 min read

class AccountDetailAPIView(APIView):
    # 로그인상태
    permission_classes = [IsAuthenticated]

    def get_user(self, user_id):
        return get_object_or_404(get_user_model(), pk=user_id)

    # 프로필 조회
    def get(self, request, user_id):
        # 1. get user
        user = self.get_user(user_id)
        # 2. serializer userdata
        serializer = UserDetailSerializer(user)
        # 3. return user using serializer
        return Response(serializer.data, status=200

회원 가입 기능 및 프로필 조회

class AccountAPIView(APIView):
    # 회원 가입
    def post(self, request):
        serializer = UserSerializer(data=request.data)

        if serializer.is_valid():
            username = serializer.validated_data['username']
            email = serializer.validated_data['email']


            # username중복 체크
            if User.objects.filter(username=username).exists():
                return Response({"error": "This name is already in use"}, status=status.HTTP_400_BAD_REQUEST)

            if email:
                if get_user_model().objects.filter(email=email).exists():
                    return Response({"Message": "email already exists"}, status=status.HTTP_400_BAD_REQUEST)

            serializer.save()

            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)