From d99db57d75bc6a694e4eb2376d80aabbdcfbfca6 Mon Sep 17 00:00:00 2001 From: Timo Furrer Date: Mon, 15 Feb 2016 19:26:23 -0800 Subject: [PATCH] Fix export only formats Formats like LaTeX could have never been exported because `setattr(cls, set_%s % fmt.title, fmt.import_set)` always failed for export-only formats and with that the exception was caught in the outer try/except and the format tuple was set to (None, None) with `cls._formats[fmt.title] = (None, None)` --- tablib/core.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tablib/core.py b/tablib/core.py index 5b23cb5..f94dda2 100644 --- a/tablib/core.py +++ b/tablib/core.py @@ -252,12 +252,13 @@ class Dataset(object): try: try: setattr(cls, fmt.title, property(fmt.export_set, fmt.import_set)) + setattr(cls, 'get_%s' % fmt.title, fmt.export_set) + setattr(cls, 'set_%s' % fmt.title, fmt.import_set) cls._formats[fmt.title] = (fmt.export_set, fmt.import_set) except AttributeError: setattr(cls, fmt.title, property(fmt.export_set)) + setattr(cls, 'get_%s' % fmt.title, fmt.export_set) cls._formats[fmt.title] = (fmt.export_set, None) - setattr(cls, 'get_%s' % fmt.title, fmt.export_set) - setattr(cls, 'set_%s' % fmt.title, fmt.import_set) except AttributeError: cls._formats[fmt.title] = (None, None)