Newer
Older
from common.serializers import CurrentUserProfileDefault
from . import models
class TaskSerializer(serializers.ModelSerializer):
class Meta:
model = models.Task
read_only_fields = ('created_by', 'created_at', 'updated_at')
def validate(self, data):
if timezone.now() >= data['deadline']:
raise serializers.ValidationError('Please, enter appropriate deadline.')
return data
class SolutionSerializer(serializers.ModelSerializer):
class Meta:
model = models.Solution
read_only_fields = ('created_by', 'created_at', 'updated_at', 'ready', 'files')
fields = (
'task',
'created_at',
'updated_at',
'accepted',
'files',
'created_by',
'corrected',
'note',
)
def validate(self, data):
if timezone.now() > data['task'].deadline:
raise serializers.ValidationError('You late.')
return data
def create(self, validated_data):
validated_data['accepted'] = False
validated_data['corrected'] = False
validated_data['note'] = ''
return self.Meta.model.objects.create(**validated_data)