I want to prepare a new object but wait for user input to create it:
I've added get_form to this view:
class MyCreateView(CreateView):
def get_form(self, form_class):
form = super(MyCreateManView, self).get_form(form_class)
if self.kwargs['ref']:
new_item = get_object_or_404(models.MyModel, pk = self.kwargs['ref'])
new_item.pk = None
new_item.note = "Copia di " + new_item.note
form = MyForm(instance = new_item)
def form_valid(self, form):
...
In the method, I read the GET parameter 'ref' and precompile the form fields with that data.
But when I submit the data, the form_valid method is not executed and the new object is not created.
if form.is_valid(): form = form.save(); context = { "form": form, } ; return render(request, "app/template.html", context)super(MyCreateManView, self).form_valid(form)doesn't make much sense. Have you got this code from somewhere else and copied in bits and pieces?