diff options
Diffstat (limited to 'chimere/utils.py')
-rw-r--r-- | chimere/utils.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/chimere/utils.py b/chimere/utils.py index a82d88b..33ebdf7 100644 --- a/chimere/utils.py +++ b/chimere/utils.py @@ -86,6 +86,7 @@ class ImportManager(object): 'import_key__icontains':'%s:%s;' % (key, import_key), 'import_source':self.importer_instance.source} try: + item = None if pk: ref_item = cls.objects.get(pk=pk) else: @@ -505,10 +506,10 @@ class CSVManager(ImportManager): return (0, 0, msg) reader = csv.reader(source, delimiter=';', quotechar='"') prop_cols = [] - for pm in Marker.properties(): + for pm in Marker.all_properties(): prop_cols.append((pm.name, pm.getAttrName(), pm.getAttrName()+'_set')) - cols = self.COLS + prop_cols + cols = list(self.COLS) + prop_cols datas = [] for idx, row in enumerate(reader): if not idx: # first row @@ -538,7 +539,7 @@ class CSVManager(ImportManager): dct['route'] = geom else: continue - import_key = pk if pk else name + import_key = pk if pk else name.decode('utf-8') item, updated, created = self.create_or_update_item(cls, dct, import_key, pk=pk) if updated: @@ -556,8 +557,8 @@ class CSVManager(ImportManager): def export(cls, queryset): dct = {'description':unicode(datetime.date.today()), 'data':[]} cls_name = queryset.model.__name__.lower() - cols = cls.COLS - for pm in queryset.model.properties(): + cols = list(cls.COLS) + for pm in queryset.model.all_properties(): cols.append((pm.name, pm.getAttrName(), pm.getAttrName()+'_set')) header = [col[0] for col in cols] dct['data'].append(header) |