diff --git a/account/serializers.py b/account/serializers.py index c2852a3c..ddd5aaba 100644 --- a/account/serializers.py +++ b/account/serializers.py @@ -46,3 +46,9 @@ class EditUserSerializer(serializers.Serializer): password = serializers.CharField(max_length=30, min_length=6, required=False, default=None) email = serializers.EmailField(max_length=254) admin_type = serializers.IntegerField(default=0) + + +class ApplyResetPasswordSerializer(serializers.Serializer): + username = serializers.CharField(max_length=30) + email = serializers.EmailField() + captcha = serializers.CharField(max_length=4, min_length=4) \ No newline at end of file diff --git a/utils/models.py b/utils/models.py index 671718c7..81858412 100644 --- a/utils/models.py +++ b/utils/models.py @@ -14,14 +14,4 @@ class RichTextField(models.TextField): parser = XssHtml() parser.feed(value) parser.close() - return parser.getHtml() - - -class JsonField(models.TextField): - __metaclass__ = models.SubfieldBase - - def get_prep_value(self, value): - return json.dumps(value) - - def to_python(self, value): - return json.loads(value) \ No newline at end of file + return parser.getHtml() \ No newline at end of file diff --git a/utils/templatetags/problem.py b/utils/templatetags/problem.py index 31d290df..1ccfa157 100644 --- a/utils/templatetags/problem.py +++ b/utils/templatetags/problem.py @@ -9,6 +9,9 @@ def get_problem_accepted_radio(problem): def get_problem_status(problems_status, problem_id): + # 用户没登陆 或者 user.problem_status 中没有这个字段都会到导致这里的problem_status 为 "" + if not problems_status: + return "" if str(problem_id) in problems_status: if problems_status[str(problem_id)] == 1: @@ -16,6 +19,7 @@ def get_problem_status(problems_status, problem_id): return "glyphicon glyphicon-minus dealing-flag" return "" + from django import template register = template.Library()