From ecb817d8531c9b636fc2a737a0bcba4824d199f4 Mon Sep 17 00:00:00 2001 From: shaohuzhang1 Date: Tue, 5 Mar 2024 12:21:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=99=BB=E5=BD=95=E5=8E=BB=E6=8E=89?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=90=8D=E6=A0=A1=E9=AA=8C,=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=AF=86=E7=A0=81=E6=B7=BB=E5=8A=A0=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/users/serializers/user_serializers.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/apps/users/serializers/user_serializers.py b/apps/users/serializers/user_serializers.py index 4b2d03b14..33d9ed7fd 100644 --- a/apps/users/serializers/user_serializers.py +++ b/apps/users/serializers/user_serializers.py @@ -37,9 +37,7 @@ user_cache = cache.caches['user_cache'] class LoginSerializer(ApiMixin, serializers.Serializer): username = serializers.CharField(required=True, - error_messages=ErrMessage.char("用户名"), - max_length=20, - min_length=6) + error_messages=ErrMessage.char("用户名")) password = serializers.CharField(required=True, error_messages=ErrMessage.char("密码")) @@ -240,9 +238,18 @@ class RePasswordSerializer(ApiMixin, serializers.Serializer): code = serializers.CharField(required=True, error_messages=ErrMessage.char("验证码")) - password = serializers.CharField(required=True, error_messages=ErrMessage.char("密码")) + password = serializers.CharField(required=True, error_messages=ErrMessage.char("密码"), + validators=[validators.RegexValidator(regex=re.compile( + "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z_!@#$%^&*`~()-+=]+$)" + "(?![0-9_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9_!@#$%^&*`~()-+=]{6,20}$") + , message="确认密码长度6-20个字符,必须字母、数字、特殊字符组合")]) - re_password = serializers.CharField(required=True, error_messages=ErrMessage.char("确认密码")) + re_password = serializers.CharField(required=True, error_messages=ErrMessage.char("确认密码"), + validators=[validators.RegexValidator(regex=re.compile( + "^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z_!@#$%^&*`~()-+=]+$)" + "(?![0-9_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9_!@#$%^&*`~()-+=]{6,20}$") + , message="确认密码长度6-20个字符,必须字母、数字、特殊字符组合")] + ) class Meta: model = User