summaryrefslogtreecommitdiff
path: root/chimere/admin.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2013-04-23 00:27:33 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2013-04-23 00:27:33 +0200
commit2860fd0cf740783bfe666ba969c023ccbce9ef5e (patch)
tree3385139362f098ea3de5148356a59eb12de2abe5 /chimere/admin.py
parentbb5d66ee68c4119c78d7a054180cce71be359fe4 (diff)
downloadChimère-2860fd0cf740783bfe666ba969c023ccbce9ef5e.tar.bz2
Chimère-2860fd0cf740783bfe666ba969c023ccbce9ef5e.zip
Allow generalization of CSV export
Diffstat (limited to 'chimere/admin.py')
-rw-r--r--chimere/admin.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/chimere/admin.py b/chimere/admin.py
index c36fd26..d492a4c 100644
--- a/chimere/admin.py
+++ b/chimere/admin.py
@@ -84,14 +84,18 @@ def export_to_shapefile(modeladmin, request, queryset):
return response
export_to_shapefile.short_description = _(u"Export to Shapefile")
-def export_to_csv(modeladmin, request, queryset):
- u"""
- Export data to CSV
- """
- filename, result = CSVManager.export(queryset)
- response = HttpResponse(result, mimetype='text/csv')
- response['Content-Disposition'] = 'attachment; filename=%s' % filename
- return response
+def _export_to_csv(cols=[]):
+ def func(modeladmin, request, queryset):
+ u"""
+ Export data to CSV
+ """
+ filename, result = CSVManager.export(queryset, cols=cols)
+ response = HttpResponse(result, mimetype='text/csv')
+ response['Content-Disposition'] = 'attachment; filename=%s' % filename
+ return response
+ return func
+
+export_to_csv = _export_to_csv()
export_to_csv.short_description = _(u"Export to CSV")
def managed_modified(modeladmin, request, queryset):