summaryrefslogtreecommitdiff
path: root/ishtar_common/wizards.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/wizards.py')
-rw-r--r--ishtar_common/wizards.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py
index e1f031818..b96e33669 100644
--- a/ishtar_common/wizards.py
+++ b/ishtar_common/wizards.py
@@ -22,6 +22,8 @@ import datetime
from django.conf import settings
from django.contrib.formtools.wizard.views import NamedUrlWizardView
from django.core.exceptions import ObjectDoesNotExist
+from django.core.files.images import ImageFile
+from django.db.models.fields.files import FileField
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.utils.datastructures import MultiValueDict
@@ -334,6 +336,11 @@ class Wizard(NamedUrlWizardView):
for k in dct:
if k.startswith('pk'):
continue
+ # False set to None for images and files
+ if isinstance(obj.__class__._meta.get_field(k), FileField) or\
+ isinstance(obj.__class__._meta.get_field(k), ImageFile):
+ if not dct[k]:
+ dct[k] = None
setattr(obj, k, dct[k])
try:
obj.full_clean()
@@ -646,7 +653,9 @@ class Wizard(NamedUrlWizardView):
continue
if hasattr(value, 'pk'):
value = value.pk
- if value in (True, False):
+ if value in (True, False) or \
+ isinstance(value, FileField) or \
+ isinstance(value, ImageFile):
initial[base_field] = value
elif value != None:
initial[base_field] = unicode(value)