Я использую UpdateView
как discussed here. Я хотел бы расширить класс ниже, чтобы некоторые объектно-ориентированные вычисления могли быть выполнены до отображения html-страницы. Например, некоторый фиктивный код ниже, do_some_calc()
добавит два номера, и результат будет сохранен в объекте/экземпляре MyModel.Добавление работы внутри UpdateView перед визуализацией шаблона
Есть ли предпочтительный подход?
models.py:
class MyModel(models.Model):
A = models.FloatField(null=True)
B = models.FloatField(null=True)
C = models.FloatField(null=True)
def do_some_calc(self):
self.C = self.A + self.B
#
views.py:
class UpdateMyModelView(UpdateView):
model = MyModel
template_name='data_form.html'
fields = ['A', 'B', 'C']
def get_success_url(self):
return self.request.POST.get('next', '/default-url/')
спасибо. Это подходит для меня. – js07920
Рад помочь – e4c5