Feat: [#22] custom_url 중복체크 및 설정 로직 구현

This commit is contained in:
sm4640
2025-04-08 15:52:05 +09:00
parent 519a1560a7
commit b30c0991d9

View File

@@ -95,3 +95,22 @@ class NicknameAPIView(APIView):
except:
return Response({"message": "사용할 수 있는 닉네임입니다."}, status=status.HTTP_200_OK)
class SetPortofolioRequiredInfoAPIView(APIView):
def get(self, request):
custom_url = request.GET.get('custom_url', None)
if not custom_url:
return Response({"message": "no url"}, status=status.HTTP_400_BAD_REQUEST)
if User.objects.filter(custom_url=custom_url).exists():
return Response({"message": "already used url"}, status=status.HTTP_400_BAD_REQUEST)
else:
return Response({"message": "can use this url"}, status=status.HTTP_200_OK)
def patch(self, request):
user = request.user
serializer = SetPortofolioRequiredInfoSerializer(user, data=request.data)
if serializer.is_valid():
serializer.save()
user.is_custom_url = True
user.save()
return Response({"message": "updated successfully"}, status=status.HTTP_202_ACCEPTED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)