修复OI模式下测试点全部错误结果也是部分错误
This commit is contained in:
@@ -25,7 +25,7 @@ class SubmissionSafeSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Submission
|
||||
exclude = ('info', 'contest_id')
|
||||
exclude = ("info", "contest_id")
|
||||
|
||||
@staticmethod
|
||||
def get_username(obj):
|
||||
@@ -38,16 +38,18 @@ class SubmissionListSerializer(SubmissionSafeSerializer):
|
||||
show_link = serializers.SerializerMethodField()
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.user = kwargs.pop('user', None)
|
||||
self.user = kwargs.pop("user", None)
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
class Meta:
|
||||
model = Submission
|
||||
exclude = ('info', 'contest_id', 'code')
|
||||
exclude = ("info", "contest_id", "code")
|
||||
|
||||
def get_show_link(self, obj):
|
||||
if self.user.id is None:
|
||||
return False
|
||||
return obj.check_user_permission(self.user)
|
||||
|
||||
@staticmethod
|
||||
def get_username(obj):
|
||||
return User.objects.get(id=obj.user_id).username
|
||||
return User.objects.get(id=obj.user_id).username
|
||||
|
||||
@@ -12,7 +12,6 @@ from ..serializers import CreateSubmissionSerializer, SubmissionModelSerializer
|
||||
from ..serializers import SubmissionSafeSerializer, SubmissionListSerializer
|
||||
|
||||
|
||||
|
||||
def _submit(response, user, problem_id, language, code, contest_id=None):
|
||||
# TODO: 预设默认值,需修改
|
||||
controller = BucketController(user_id=user.id,
|
||||
@@ -83,7 +82,7 @@ class SubmissionListAPI(APIView):
|
||||
if problem_id:
|
||||
subs = subs.filter(problem_id=problem_id)
|
||||
|
||||
if request.GET.get("myself"):
|
||||
if request.GET.get("myself") and request.GET["myself"] == "1":
|
||||
subs = subs.filter(user_id=request.user.id)
|
||||
# todo: paginate
|
||||
return self.success(SubmissionListSerializer(subs, many=True, user=request.user).data)
|
||||
|
||||
Reference in New Issue
Block a user