This commit is contained in:
ygm1881
2022-04-17 18:33:48 +08:00
parent f0389a8c8e
commit b14a69e312
4 changed files with 32 additions and 15 deletions
Generated
-1
View File
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="VcsDirectoryMappings"> <component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" /> <mapping directory="$PROJECT_DIR$" vcs="Git" />
</component> </component>
</project> </project>
+6 -2
View File
@@ -78,8 +78,12 @@ WSGI_APPLICATION = 'ITShowPlatform.wsgi.application'
DATABASES = { DATABASES = {
'default': { 'default': {
'ENGINE': 'django.db.backends.sqlite3', 'ENGINE': 'django.db.backends.mysql',
'NAME': BASE_DIR / 'db.sqlite3', 'NAME': 'it_show',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': 3306,
} }
} }
+2 -1
View File
@@ -14,8 +14,9 @@ Including another URLconf
2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) 2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
""" """
from django.contrib import admin from django.contrib import admin
from django.urls import path from django.urls import path, include
urlpatterns = [ urlpatterns = [
path('admin/', admin.site.urls), path('admin/', admin.site.urls),
path('',include("enroll.urls"))
] ]
+24 -11
View File
@@ -1,4 +1,4 @@
from rest_framework.exceptions import ValidationError from rest_framework.exceptions import ValidationError, ErrorDetail
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework.generics import GenericAPIView from rest_framework.generics import GenericAPIView
from enroll.models import Department, EmailVerifyRecord, New_member from enroll.models import Department, EmailVerifyRecord, New_member
@@ -30,19 +30,25 @@ class Sign_up(GenericAPIView):
data = request.data data = request.data
serializer = self.get_serializer(data=data) serializer = self.get_serializer(data=data)
code = data['verification_code'] code = data['verification_code']
# print(f"code={code}") print(f"code={code}")
try: try:
if code != EmailVerifyRecord.objects.get(email=data['email']).code: if code != EmailVerifyRecord.objects.get(email=data['email']).code:
return Response({"verification_code": "邮箱验证码错误"}, status=status.HTTP_400_BAD_REQUEST) return Response({"code": 40000, "msg": {"verification_code": "邮箱验证码错误"}},
status=status.HTTP_400_BAD_REQUEST)
except EmailVerifyRecord.DoesNotExist: except EmailVerifyRecord.DoesNotExist:
return Response({"verification_code": "请先发送验证码"}, status=status.HTTP_400_BAD_REQUEST) return Response({"code": 40000, "msg": {"verification_code": "请先发送验证码"}},
serializer.is_valid(raise_exception=True) status=status.HTTP_400_BAD_REQUEST)
serializer.save() ret = serializer.is_valid(raise_exception=False)
# print(serializer.errors)
# if ret:
# serializer.save() # serializer.save()
# else: # print(serializer.errors)
# print(f"error_messages={serializer.errors}") # ErrorDetail
if ret:
serializer.save()
else:
error = {}
for (i, j) in zip(serializer.errors.keys(), serializer.errors.values()):
error[str(i)] = str(j[0])
return Response({"code": 40000, "msg": error}, status=status.HTTP_400_BAD_REQUEST)
return Response({"code": 20000, "msg": "成功"}) return Response({"code": 20000, "msg": "成功"})
def get(self, request): def get(self, request):
@@ -65,6 +71,13 @@ class Send_email(APIView):
def post(self, request): def post(self, request):
data = request.data data = request.data
serializer = Send_email_serializer(data=data) serializer = Send_email_serializer(data=data)
serializer.is_valid(raise_exception=True) ret = serializer.is_valid()
if ret:
serializer.save()
else:
error = {}
for (i, j) in zip(serializer.errors.keys(), serializer.errors.values()):
error[str(i)] = str(j[0])
return Response({"code": 40000, "msg": error}, status=status.HTTP_400_BAD_REQUEST)
send_code_email(data.get("email")) send_code_email(data.get("email"))
return Response({"code": 20000, "msg": "成功"}) return Response({"code": 20000, "msg": "成功"})