diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-01-09 14:39:13 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-01-09 14:39:13 +0100 |
commit | 1058f5e1b016f72f1fe7a2dd4fac481ba548ea0c (patch) | |
tree | 116e7d75dd02e0154e9211ce1400a3f9f02f86a3 | |
parent | f88746814e8185e06449dad96c43a5430b3db15b (diff) | |
download | Ishtar-1058f5e1b016f72f1fe7a2dd4fac481ba548ea0c.tar.bz2 Ishtar-1058f5e1b016f72f1fe7a2dd4fac481ba548ea0c.zip |
Reinitialize the modification form when the item is changed
-rw-r--r-- | ishtar/furnitures/forms.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py index 46a6f3075..50a433191 100644 --- a/ishtar/furnitures/forms.py +++ b/ishtar/furnitures/forms.py @@ -292,16 +292,17 @@ class Wizard(NamedUrlSessionFormWizard): def get_form_initial(self, request, storage, step): current_obj = self.get_current_object(request, storage) - if current_obj: - return self.get_instanced_init(current_obj, request, storage, - step) - elif step.startswith('selec-') and step in self.form_list \ + if step.startswith('selec-') and step in self.form_list \ and 'pk' in self.form_list[step].associated_models: model_name = self.form_list[step].associated_models['pk' ].__name__.lower() + self.reset_wizard(request, storage) val = model_name in request.session and request.session[model_name] if val: return {'pk':val} + elif current_obj: + return self.get_instanced_init(current_obj, request, storage, + step) return super(Wizard, self).get_form_initial(request, storage, step) def get_instanced_init(self, obj, request, storage, step): |