Change account interface

This commit is contained in:
Chiaki
2017-04-30 21:58:34 +08:00
parent 583954c61b
commit 043f8c8b26
5 changed files with 76 additions and 23 deletions

View File

@@ -1,6 +1,8 @@
from django import forms
from utils.api import DateTimeTZField, serializers
from .models import AdminType, ProblemPermission, User
from .models import AdminType, ProblemPermission, User, UserProfile
class UserLoginSerializer(serializers.Serializer):
@@ -32,6 +34,18 @@ class UserSerializer(serializers.ModelSerializer):
"create_time", "last_login", "two_factor_auth", "open_api", "is_disabled"]
class UserProfileSerializer(serializers.ModelSerializer):
class Meta:
model = UserProfile
class UserInfoSerializer(serializers.ModelSerializer):
class Meta:
model = UserProfile
class EditUserSerializer(serializers.Serializer):
id = serializers.IntegerField()
username = serializers.CharField(max_length=30)
@@ -46,6 +60,16 @@ class EditUserSerializer(serializers.Serializer):
is_disabled = serializers.BooleanField()
class EditUserProfileSerializer(serializers.Serializer):
avatar = serializers.CharField(max_length=100, allow_null=True, required=False)
blog = serializers.URLField(allow_null=True, required=False)
mood = serializers.CharField(max_length=200, allow_null=True, required=False)
phone_number = serializers.CharField(max_length=15, allow_null=True, required=False, )
school = serializers.CharField(max_length=200, allow_null=True, required=False)
major = serializers.CharField(max_length=200, allow_null=True, required=False)
student_id = serializers.CharField(max_length=15, allow_null=True, required=False)
class ApplyResetPasswordSerializer(serializers.Serializer):
email = serializers.EmailField()
captcha = serializers.CharField(max_length=4, min_length=4)
@@ -64,3 +88,7 @@ class SSOSerializer(serializers.Serializer):
class TwoFactorAuthCodeSerializer(serializers.Serializer):
code = serializers.IntegerField()
class AvatarUploadForm(forms.Form):
file = forms.FileField()