Добавление дней к заданной дате в Django
Я хотел бы добавить 14 дней к дате возврата, но получаю ошибку ниже.
return_date = models.DateField(issue_date + datetime.timedelta(days=14))
TypeError: unsupported operand type(s) for +: 'DateField' and 'datetime.timedelta'
Вот моя модель
class Issue(SafeDeleteModel):
_safedelete_policy = SOFT_DELETE
borrower_id = models.ForeignKey(Student,on_delete=models.CASCADE)
book_id = models.ForeignKey(Books,on_delete=models.CASCADE)
issue_date = models.DateField(default=datetime.date.today)
return_date = models.DateField(issue_date + datetime.timedelta(days=14))
issuer = models.ForeignKey(CustomUser,on_delete=models.CASCADE)
Как мне заставить его работать?
Вы должны переопределить метод сохранения или использовать сигналы
def save(self, *args, **kwargs):
self.return_date = self.issue_date + datetime.timedelta(days=14)
super(Issue, self).save(*args, **kwargs)