重新修改后台比赛编辑前后端时间不一致问题,修改了后端serializers,通过继承原来的serializer.DateTimeField类替换contestSerilazer中的DateTime.这会影响到contestAdminApi的return,并不影响其他页面.而且通过timezone.local()方法转换时区

This commit is contained in:
esp
2015-08-31 22:04:58 +08:00
parent bc435d6515
commit 001a4e6bd4
2 changed files with 11 additions and 44 deletions

View File

@@ -1,7 +1,8 @@
# coding=utf-8
import json
from rest_framework import serializers
from django.utils import timezone
import datetime
from account.models import User
from account.serializers import UserSerializer
from .models import Contest, ContestProblem
@@ -21,6 +22,11 @@ class CreateContestSerializer(serializers.Serializer):
visible = serializers.BooleanField()
class DateTimeLocal(serializers.DateTimeField):
def to_representation(self, value):
return timezone.localtime(value)
class ContestSerializer(serializers.ModelSerializer):
class UserSerializer(serializers.ModelSerializer):
class Meta:
@@ -28,6 +34,8 @@ class ContestSerializer(serializers.ModelSerializer):
fields = ["username"]
created_by = UserSerializer()
start_time = DateTimeLocal()
end_time = DateTimeLocal()
class Meta:
model = Contest