From 3385ddce188edb419eb63297ca4fc17f16fc2e97 Mon Sep 17 00:00:00 2001 From: virusdefender <1670873886@qq.com> Date: Mon, 17 Aug 2015 16:32:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=88=9B=E5=BB=BA=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E9=97=AE=E9=A2=98=E7=9A=84=E6=97=B6=E5=80=99=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E4=B8=8D=E8=83=BD=E4=B8=BA=E7=A9=BA=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- oj/urls.py | 4 +++- problem/serizalizers.py | 4 ++-- problem/views.py | 6 +++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/oj/urls.py b/oj/urls.py index 909d6bb..ba7c997 100644 --- a/oj/urls.py +++ b/oj/urls.py @@ -14,7 +14,8 @@ from group.views import (GroupAdminAPIView, GroupMemberAdminAPIView, from admin.views import AdminTemplateView from problem.views import TestCaseUploadAPIView, ProblemTagAdminAPIView, ProblemAdminAPIView -from submission.views import SubmissionAPIView +from submission.views import SubmissionAPIView, SubmissionAdminAPIView + urlpatterns = [ url(r'^install/$', "install.views.install"), @@ -57,5 +58,6 @@ urlpatterns = [ url(r'^api/admin/join_group_request/$', JoinGroupRequestAdminAPIView.as_view(), name="join_group_request_admin_api"), url(r'^api/submission/$', SubmissionAPIView.as_view(), name="submission_api"), + url(r'^api/admin/submission/$', SubmissionAdminAPIView.as_view(), name="submission_admin_api_view"), ] diff --git a/problem/serizalizers.py b/problem/serizalizers.py index d53b2bb..1fb61cc 100644 --- a/problem/serizalizers.py +++ b/problem/serizalizers.py @@ -30,7 +30,7 @@ class CreateProblemSerializer(serializers.Serializer): memory_limit = serializers.IntegerField() difficulty = serializers.IntegerField() tags = serializers.ListField(child=serializers.CharField(max_length=10)) - hint = serializers.CharField(max_length=3000, required=False, default=None) + hint = serializers.CharField(max_length=3000, allow_blank=True) class ProblemTagSerializer(serializers.ModelSerializer): @@ -66,7 +66,7 @@ class EditProblemSerializer(serializers.Serializer): difficulty = serializers.IntegerField() tags = serializers.ListField(child=serializers.CharField(max_length=20)) samples = ProblemSampleSerializer() - hint = serializers.CharField(max_length=10000) + hint = serializers.CharField(max_length=3000, allow_blank=True) visible = serializers.BooleanField() diff --git a/problem/views.py b/problem/views.py index 1d1702d..4a6e2c6 100644 --- a/problem/views.py +++ b/problem/views.py @@ -22,7 +22,7 @@ from .models import Problem, ProblemTag def problem_page(request, problem_id): try: - problem = Problem.objects.get(id=problem_id) + problem = Problem.objects.get(id=problem_id, visible=True) except Problem.DoesNotExist: return error_page(request, u"题目不存在") return render(request, "oj/problem/problem.html", {"problem": problem, "samples": json.loads(problem.samples)}) @@ -122,7 +122,7 @@ class ProblemAdminAPIView(APIView): return success_response(ProblemSerializer(problem).data) except Problem.DoesNotExist: return error_response(u"题目不存在") - problem = Problem.objects.all().order_by("-last_update_time") + problem = Problem.objects.all().order_by("-create_time") visible = request.GET.get("visible", None) if visible: problem = problem.filter(visible=(visible == "true")) @@ -217,7 +217,7 @@ class TestCaseUploadAPIView(APIView): def problem_list_page(request, page=1): # 正常情况 - problems = Problem.objects.all() + problems = Problem.objects.filter(visible=True) # 搜索的情况 keyword = request.GET.get("keyword", None)