From 2b4ec339450408cebae6bfc16cebc5fdde1c5433 Mon Sep 17 00:00:00 2001 From: "sxw@401" Date: Thu, 17 Sep 2015 10:53:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E5=86=8C=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E7=94=A8=E6=88=B7=E5=90=8D=EF=BC=8C=E9=82=AE=E7=AE=B1?= =?UTF-8?q?=E5=B7=B2=E8=A2=AB=E6=B3=A8=E5=86=8C=E7=9A=84ajax=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- account/views.py | 48 ++++++++++++--------------- template/src/oj/account/register.html | 4 +-- 2 files changed, 24 insertions(+), 28 deletions(-) diff --git a/account/views.py b/account/views.py index 9d1c847..8a3414f 100644 --- a/account/views.py +++ b/account/views.py @@ -5,15 +5,15 @@ from django.shortcuts import render from django.db.models import Q from rest_framework.views import APIView - +from rest_framework.response import Response from utils.shortcuts import serializer_invalid_response, error_response, success_response, paginate from utils.captcha import Captcha from .decorators import login_required from .models import User from .serializers import (UserLoginSerializer, UsernameCheckSerializer, - UserRegisterSerializer, UserChangePasswordSerializer, - EmailCheckSerializer, UserSerializer, EditUserSerializer) + UserRegisterSerializer, UserChangePasswordSerializer, + EmailCheckSerializer, UserSerializer, EditUserSerializer) class UserLoginAPIView(APIView): @@ -120,39 +120,35 @@ class UserChangePasswordAPIView(APIView): class UsernameCheckAPIView(APIView): - def post(self, request): + def get(self, request): """ - 检测用户名是否存在,存在返回True,不存在返回False + 检测用户名是否存在,存在返回状态码400,不存在返回200 --- - request_serializer: UsernameCheckSerializer """ - serializer = UsernameCheckSerializer(data=request.data) - if serializer.is_valid(): + username = request.GET.get("username", None) + if username: try: - User.objects.get(username=serializer.data["username"]) - return success_response(True) + User.objects.get(username=username) + return Response(status=400) except User.DoesNotExist: - return success_response(False) - else: - return serializer_invalid_response(serializer) + return Response(status=200) + return Response(status=200) class EmailCheckAPIView(APIView): - def post(self, request): + def get(self, request): """ - 检测邮箱是否存在,存在返回True,不存在返回False + 检测邮箱是否存在,存在返回状态码400,不存在返回200 --- - request_serializer: EmailCheckSerializer """ - serializer = EmailCheckSerializer(data=request.data) - if serializer.is_valid(): + email = request.GET.get("email", None) + if email: try: - User.objects.get(email=serializer.data["email"]) - return success_response(True) + User.objects.get(email=email) + return Response(status=400) except User.DoesNotExist: - return success_response(False) - else: - return serializer_invalid_response(serializer) + return Response(status=200) + return Response(status=200) class UserAdminAPIView(APIView): @@ -230,6 +226,6 @@ class AccountSecurityAPIView(APIView): try: User.objects.get(username=username, admin_type__gt=0) except User.DoesNotExist: - return success_response({"applied_captcha":False}) - return success_response({"applied_captcha":True}) - return success_response({"applied_captcha":False}) \ No newline at end of file + return success_response({"applied_captcha": False}) + return success_response({"applied_captcha": True}) + return success_response({"applied_captcha": False}) diff --git a/template/src/oj/account/register.html b/template/src/oj/account/register.html index dd5f671..ccb0902 100644 --- a/template/src/oj/account/register.html +++ b/template/src/oj/account/register.html @@ -7,7 +7,7 @@
- +
@@ -17,7 +17,7 @@
- +