������ wrote:
> On Dec 17, 7:49 am, Rajesh Dhawan <[email protected]> wrote:
> > On Dec 16, 2:31 am, $B<kKTKT(B <[email protected]> wrote:
> >
> > > Theextra_contextinFormWizardis a class attribute so the new
> > > request may get the context of the previous request.
> > > I can prepend below to __call__ method to solved it:
> >
> > > self.extra_context= self.extra_context.copy()
> >
> > > Is this really a bug?
> >
> > It's most probably a bug. See:http://code.djangoproject.com/ticket/8808
> >
> > Basically, if you hook theFormWizardinto your URL config as
> > documented 
> > athttp://docs.djangoproject.com/en/dev/ref/contrib/formtools/form-wizar...,
> > anything you set in self.extra_contextmay become available to another
> > request.
> >
> > Your fix to copy theextra_contextdoesn't solve this problem.
> >
> > Quoting an excerpt from Jacob's response on that ticket: "I should
> > note that the workaround is very simple: either don't store state on
> > self, or instantiate the wizard in a view function. "
> >
> > -Rajesh D
>
> I already instantiate the wizard in a view function when I send the
> first mail.
> Please notice that the extra_context is a class attribute.

While it can be used as a class attribute, the FormWizard API asks you
to use it as an instance attribute (i.e. self.extra_context instead of
FormWizard.extra_context).

> Just instantiate the wizard in a view function did not solved the
> problem, and my fix will solve it.
>
> Add below will fix when instantiate the wizard in urlconf:
>
> Change the last line in __call__ from:
>   return self.render(form, request, current_step)
> to:
>   response = self.render(form, request, current_step)
>   del self.extra_context  # here the extra_context is a copy in
> instance, once delete, the next request will copy one from the class
> extra_context
>   return response

That's not needed if you instantiate FormWizard every time the view is
called because each new instance of FormWizard will give you an empty
self.extra_context to begin with.

Can you show your view and url conf code fragments that did not work?

-Rajesh

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to