My Proposal model is defined as follows:
class Proposal(models.Model):
scheduled_time = models.DateTimeField()
duration = models.IntegerField() # sto
F()
-expressions works only with django (as they return instances of specific objects). You can't pass them to timedelta or whatever except some of the django queryset methods.
So you'd better add new field to you model:
class Proposal(models.Model):
scheduled_time = models.DateTimeField()
duration = IntegerField()
end = models.DateTimeField(default=self.scheduled_time + timedelta(minutes=self.duration))
F() can't be used that way, as @Daniil already pointed out.
A possible solution is to add a new field
end_time = models.DateTimeField()
and override the save method
def save(self, *args, **kwargs):
if not self.end_time:
self.end_time = self.scheduled_time + datetime.timedelta(self.duration)
super(Proposal, self).save(*args, **kwargs)