아~ヾ( ̄▽ ̄) 아래 소스코드를 짠다고 얼마나 많은 시간을 쏟아 부었는지.
물론 무에서 유를 창조할 능력이 없는 나로서는 구글링 하며 여기 저기 짜집기식으로 한거지만 그것 마저도 힘든 나!
힘내서 한걸음 한걸음 나아가면 언젠간 고지가 보일듯.
import json
import re
from django.http import JsonResponse
from django.views import View
from user.models import User
class SignUpView(View):
def post(self, request):
try:
data = json.loads(request.body)
email = data['email']
password = data['password']
MIN_LEN_PWD = 8
p = re.compile('^[a-zA-Z0-9+-_.]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$')
if not email and password:
return JsonResponse({'MESSAGE':'KEY_ERROR'}, status=400)
if len(password) < MIN_LEN_PWD:
return JsonResponse({'MESSAGE':f'PASSWORD SHOULD BE OVER {MIN_LEN_PWD} CHAR'}, status=400)
if not p.match(email):
return JsonResponse({'MESSAGE':'EMAIL ERROR.'}, status=400)
if not User.objects.filter(email=email).exists():
User.objects.create(
password=data['password'],
email =data['email']
)
return JsonResponse({'MESSAGE':'SUCCESS'}, status=201)
return JsonResponse({'MESSAGE':'EMAIL ALREADY EXISTS.'}, status=400)
except User.DoesNotExist:
return JsonResponse({'MESSAGE':'DOES NOT EXISTS'}, status=400)
except KeyError:
return JsonResponse({'MESSAGE':"KEY ERROR OCCUR"}, status=400)
def get(self, request):
result = [user_info.name for user in User.objects.all()]
return JsonResponse({'result':result}, status=200)
첫 번째 IF 조건이 정상적으로 작동하는지 확인해봤습니다.
매우매우 기분 좋게 400 ERROR 떳네요?!
기분 좋아 져~쓰~~~!
비번 7개 넣고 POST요청하니 오류 발생 해~~~쓰!
기본 좋아 져~쓰~!
포인트는 뭐다?! @ . 요 두개의 문자가 없으면 안된다는거~!
점(.)이 없을때!!
@ 이 없을때
이미 있는 이메일로 만들겠다고?! 고건 안돼지!