KeyError: 'author' в def_validate Django
Я получаю эту ошибку внутри django validation.
if attrs['author'].id == self.context['request'].user.pk:
KeyError: 'author'
Вот моя модель django и код сериализатора.
class CalendarTime(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
author = models.ForeignKey(User, on_delete=models.CASCADE,related_name='calendartimes')
time= models.CharField(max_length=50)
date = models.CharField(max_length=300)
timestamp = models.DateTimeField(auto_now_add=True)
allowstocks = models.BooleanField(default=False)
stock = models.IntegerField(default='0')
class Meta:
constraints = [models.UniqueConstraint(fields=['author', 'time','date'],name='unique_calendartime')]
class CalendarTimeSerializer(serializers.ModelSerializer):
class Meta:
model = CalendarTime
fields = ("id","author","allowstocks","stock","time","date","timestamp")
def validate(self, attrs):
attrs = super().validate(attrs)
if attrs['author'].id == self.context['request'].user.pk:
return attrs
raise ValidationError('Unauthorized Request')
Код validate работает нормально в других функциях. Кто-нибудь знает, откуда взялась проблема?