метод save в модели. В него добавлена бизнес логика, в которой подсчитывается количество бизнес часов между двумя датами ( создание задачи и ее завершение). При закрытии задачи логика не отрабатывает т.к. дата завершения еще не записалась в бд, но функции подсчета часов уже просят ее. Вызывать Два раза super.save() кажется плохой идеей. Как быть?
def save(self, *args, **kwargs):
self.total_duration = self.get_total_duration()
self.in_progress_duration = self.get_in_progress_duration()
super(Task, self).save(*args, **kwargs)
ну если у тебя в БД есть такое поле и ты перед тем как вызвать save передал в это поле значение, то по идее перед вызовом super.save() значение дожно быть в поле self.myfield
В бд у меня это поле на момент закрытия задачи [none]. Я отправляю пост запрос с фронта содержаший текущий datetime и ожидаю, что сначала это значение запишется, а потом отработает подсчет количества часов
почему сначала надо записать а потом посчитать? посчитай и запиши разом, значение же есть
Обсуждают сегодня