diff options
Diffstat (limited to 'ishtar_common/models_imports.py')
| -rw-r--r-- | ishtar_common/models_imports.py | 28 | 
1 files changed, 12 insertions, 16 deletions
| diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index 2a594584e..cfc8857de 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -31,7 +31,7 @@ import zipfile  from django.conf import settings  from django.contrib.gis.db import models  from django.core.exceptions import SuspiciousOperation -from django.core.files import File +from django.core.files.base import ContentFile  from django.db.models.base import ModelBase  from django.db.models.signals import pre_delete  from django.template.defaultfilters import slugify @@ -861,29 +861,25 @@ class Import(models.Model):          filename = slugify(self.importer_type.name)          now = datetime.datetime.now().isoformat('-').replace(':', '')          result_file = filename + "_result_%s.csv" % now -        result_file = os.sep.join([self.result_file.storage.location, -                                   result_file]) -        with open(result_file, 'w') as fle: -            fle.write(importer.get_csv_result().encode('utf-8')) -        self.result_file = File(open(fle.name)) +        self.result_file.save( +            result_file, ContentFile(importer.get_csv_result().encode('utf-8'))) +          if importer.errors:              self.state = 'FE'              error_file = filename + "_errors_%s.csv" % now -            error_file = os.sep.join([self.error_file.storage.location, -                                      error_file]) -            with open(error_file, 'w') as fle: -                fle.write(importer.get_csv_errors().encode('utf-8')) -            self.error_file = File(open(fle.name)) +            self.error_file.save( +                error_file, +                ContentFile(importer.get_csv_errors().encode('utf-8')) +            )          else:              self.state = 'F'              self.error_file = None          if importer.match_table:              match_file = filename + "_match_%s.csv" % now -            match_file = os.sep.join([self.match_file.storage.location, -                                      match_file]) -            with open(match_file, 'w') as fle: -                fle.write(importer.get_csv_matches().encode('utf-8')) -            self.match_file = File(open(fle.name)) +            self.match_file.save( +                match_file, +                ContentFile(importer.get_csv_matches().encode('utf-8')) +            )          self.save()      def archive(self): | 
