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.

Может ли кто-нибудь помочь мне понять, почему это происходит?

Спасибо.

Вернуться на верх