Added header property to prevent invalid headers being set.

This commit is contained in:
Kenneth Reitz
2010-09-13 17:22:02 -04:00
parent a7471f7302
commit 9ecc57dbf7
+17 -2
View File
@@ -18,7 +18,7 @@ import yaml
from helpers import *
__all__ = ['Dataset', 'DataBook']
# __all__ = ['Dataset', 'DataBook']
__name__ = 'tablib'
__version__ = '0.6.1'
@@ -36,6 +36,7 @@ class Dataset(object):
self._saved_file = None
self._saved_format = None
self._data = list(args)
self.__headers = None
try:
self.headers = kwargs['headers']
@@ -119,8 +120,22 @@ class Dataset(object):
try:
return len(self._data[0])
except IndexError, why:
return 0
try:
return len(self.headers)
except TypeError, e:
return 0
@property
def headers(self):
"""Headers property."""
return self.__headers
@headers.setter
def headers(self, collection):
"""Validating headers setter."""
self._validate(collection)
self.__headers = collection
@property
def dict(self):
"""Returns python dict of Dataset."""