summaryrefslogtreecommitdiff
path: root/chimere/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/utils.py')
-rw-r--r--chimere/utils.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/chimere/utils.py b/chimere/utils.py
index 8a9855a..0d97757 100644
--- a/chimere/utils.py
+++ b/chimere/utils.py
@@ -81,6 +81,7 @@ class ImportManager:
'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:
@@ -490,10 +491,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
@@ -505,7 +506,7 @@ class CSVManager(ImportManager):
if len(row) < len(cols):
continue
pk, name, cats, state = row[0], row[1], row[2], row[3]
- description, geom = row[4], row[5]
+ description, geom = row[4], row[5].upper()
COL_INDEX = 6
dct = {'description':description,
'name':name,
@@ -520,7 +521,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:
@@ -538,8 +539,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)