From eda9d5af0347e89787aeee27d3fcde0531c8d2c5 Mon Sep 17 00:00:00 2001 From: xando Date: Wed, 16 May 2012 16:56:53 +0100 Subject: [PATCH] Generic method import_book (similar to import_set) to import data into Databook model. --- tablib/__init__.py | 2 +- tablib/core.py | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/tablib/__init__.py b/tablib/__init__.py index ec8467e..65d1e13 100644 --- a/tablib/__init__.py +++ b/tablib/__init__.py @@ -1,7 +1,7 @@ """ Tablib. """ from tablib.core import ( - Databook, Dataset, detect, import_set, + Databook, Dataset, detect, import_set, import_book, InvalidDatasetType, InvalidDimensions, UnsupportedFormat, __version__ ) diff --git a/tablib/core.py b/tablib/core.py index c52671e..1fdc77c 100644 --- a/tablib/core.py +++ b/tablib/core.py @@ -1008,6 +1008,19 @@ def import_set(stream): return None +def import_book(stream): + """Return dataset of given stream.""" + (format, stream) = detect(stream) + + try: + databook = Databook() + format.import_book(databook, stream) + return databook + + except AttributeError: + return None + + class InvalidDatasetType(Exception): "Only Datasets can be added to a DataBook"