У меня есть представление на основе классов.Я хочу обновить поле в модели всякий раз, когда оно сохраняется.Это поле не установлено пользователем;это поле, в котором говорится, что данные формы были изменены и требуют повторного утверждения.Один из способов думать об этом - в def form_valid
запросить модель и установить в поле нужное мне значение.Запрос, который я выполняю, также находится в функции, определенной в этом классе.Могу ли я запустить эту функцию в def form_valid
вместо того, чтобы вызывать ее?Все мои попытки оказываются бесплодными.
class CUpdateView(LoginRequiredMixin, UpdateView):
def get_object(self):
qs = C.objects.filter(
c_id = self.kwargs.get('c_id')
)
if qs.count() == 1:
if self.request.user == qs.first().a.user or self.request.user == qs.first().inhouselandmanager.user:
pass
else:
raise PermissionDenied
return qs.first()
raise Http404
def form_valid(self, form):
if self.object.status != 'initiated':
return HttpResponseRedirect(reverse('c:detail', kwargs={'c_id': str(self.object.c_id) }))
qs = super().get_object()
qs.update(approved=False)
return super().form_valid(form)