TypeError: неподдерживаемый тип(ы) операнда для -: 'long' и 'datetime.date'
Для этого куска кода (в модели были и другие вещи, но я удалил их, чтобы получить минимальный пример):
class Invoice(models.Model):
"""
Represents one invoice line in the imported data.
"""
payment_date = models.DateField(
blank=True, null=True, help_text="Format: YYYY-MM-DD")
date = models.DateField(db_index=True, blank=True,
null=True, help_text="Format: YYYY-MM-DD")
date_diff = models.IntegerField(default=0)
class Meta:
app_label = 'analysis'
ordering = ('claim_order',)
def clean(self):
self.date_diff = (
self.payment_date - self.date).days if (self.payment_date and self.date) else 0
Я получаю
typeError: unsupported operand type(s) for -: 'long' and 'datetime.date'
и я не могу понять почему, потому что оба поля являются DateFields.
Может ли кто-нибудь помочь мне понять, почему это происходит?
Спасибо.