✨ Feat: [#22] custom_url 중복체크 및 설정 로직 구현
This commit is contained in:
@@ -94,4 +94,23 @@ class NicknameAPIView(APIView):
|
||||
return Response({"message": "해당 닉네임은 사용할 수 없습니다."}, status=status.HTTP_400_BAD_REQUEST)
|
||||
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)
|
||||
Reference in New Issue
Block a user