From be4ff1985a2e37d61c325b27db3bd014a58139c0 Mon Sep 17 00:00:00 2001 From: Aron Podrigal Date: Sun, 17 Jan 2016 05:54:30 -0500 Subject: [PATCH 1/2] Fixed import - and PY3 Use six.text_type PY3 __init__.py fixed import --- djqscsv/__init__.py | 2 +- djqscsv/djqscsv.py | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/djqscsv/__init__.py b/djqscsv/__init__.py index 63f0ff0..d5439ee 100644 --- a/djqscsv/__init__.py +++ b/djqscsv/__init__.py @@ -1,2 +1,2 @@ -from djqscsv import (render_to_csv_response, write_csv, # NOQA +from .djqscsv import (render_to_csv_response, write_csv, # NOQA generate_filename, CSVException) # NOQA diff --git a/djqscsv/djqscsv.py b/djqscsv/djqscsv.py index c879f4b..a31222b 100644 --- a/djqscsv/djqscsv.py +++ b/djqscsv/djqscsv.py @@ -134,7 +134,7 @@ def generate_filename(queryset, append_datestamp=False): Takes a queryset and returns a default base filename based on the underlying model """ - base_filename = slugify(unicode(queryset.model.__name__)) + '_export.csv' + base_filename = slugify(six.text_type(queryset.model.__name__)) + '_export.csv' if append_datestamp: base_filename = _append_datestamp(base_filename) @@ -154,17 +154,17 @@ def _validate_and_clean_filename(filename): else: filename = filename[:-4] - filename = slugify(unicode(filename)) + '.csv' + filename = slugify(six.text_type(filename)) + '.csv' return filename def _safe_utf8_stringify(value): if isinstance(value, str): return value - elif isinstance(value, unicode): + elif isinstance(value, six.text_type): return value.encode('utf-8') else: - return unicode(value).encode('utf-8') + return six.text_type(value).encode('utf-8') def _sanitize_unicode_record(field_serializer_map, record): @@ -175,7 +175,7 @@ def _serialize_value(value): if isinstance(value, datetime.datetime): return value.isoformat() else: - return unicode(value) + return six.text_type(value) obj = {} for key, val in six.iteritems(record): From 0165ae4ec14573c0078228eff94af5994beab20a Mon Sep 17 00:00:00 2001 From: Aron Podrigal Date: Sun, 17 Jan 2016 16:22:33 -0500 Subject: [PATCH 2/2] Support python 3.2 --- djqscsv/djqscsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/djqscsv/djqscsv.py b/djqscsv/djqscsv.py index a31222b..fdbd51b 100644 --- a/djqscsv/djqscsv.py +++ b/djqscsv/djqscsv.py @@ -70,7 +70,7 @@ def write_csv(queryset, file_obj, **kwargs): csv_kwargs[key] = val # add BOM to support CSVs in MS Excel (for Windows only) - file_obj.write(_safe_utf8_stringify(u'\ufeff')) + file_obj.write(_safe_utf8_stringify(six.u('\ufeff'))) # the CSV must always be built from a values queryset # in order to introspect the necessary fields.