class FormAndDetailView(FormMixin, DetailView): """ Class based view to make form and detail views work together properly. """ def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["form"] = self.get_form() return context def post(self, request, *args, **kwargs): self.object = self.get_object() form = self.get_form() if form.is_valid(): return self.form_valid(form) else: return self.form_invalid(form)