diff options
Diffstat (limited to 'ishtar/ishtar_base/forms.py')
| -rw-r--r-- | ishtar/ishtar_base/forms.py | 9 | 
1 files changed, 8 insertions, 1 deletions
diff --git a/ishtar/ishtar_base/forms.py b/ishtar/ishtar_base/forms.py index 9d106aed0..d5811f38e 100644 --- a/ishtar/ishtar_base/forms.py +++ b/ishtar/ishtar_base/forms.py @@ -332,6 +332,10 @@ class Wizard(NamedUrlSessionFormWizard):                  if k.startswith('pk'):                      continue                  setattr(obj, k, dct[k]) +            try: +                obj.full_clean() +            except ValidationError, msg: +                return self.render(request, storage, form_list[-1])              for dependant_item in other_objs:                  c_item = getattr(obj, dependant_item)                  # manage ManyToMany if only one associated @@ -368,8 +372,11 @@ class Wizard(NamedUrlSessionFormWizard):                      dct[dependant_item] = c_item              if 'pk' in dct:                  dct.pop('pk') -            print self.get_saved_model()              obj = self.get_saved_model()(**dct) +            try: +                obj.full_clean() +            except ValidationError, msg: +                return self.render(request, storage, form_list[-1])              obj.save()              for k in adds:                  getattr(obj, k).add(adds[k])  | 
