Skip to content

Commit bdddd0a

Browse files
committed
fix bug when no field is provided
1 parent d1cce6a commit bdddd0a

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

datamodel/abstract.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -170,9 +170,10 @@ def _initialize_fields(attrs, annotations, strict):
170170
field,
171171
Field(type=_type, required=False, default=None)
172172
)
173-
alias = df.metadata.get("alias", None)
174-
if alias:
175-
aliases[alias] = field
173+
if df is not None and isinstance(df, Field):
174+
alias = df.metadata.get("alias", None)
175+
if alias:
176+
aliases[alias] = field
176177
if not isinstance(df, Field):
177178
df = Field(required=False, type=_type, default=df)
178179
df.name = field

datamodel/fields.pyx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,13 @@ class Field(ff):
190190

191191
@_recursive_repr
192192
def __repr__(self):
193+
if self._alias is None:
194+
return (
195+
"Field("
196+
f"column={self.name!r}, "
197+
f"type={self.type!r}, "
198+
f"default={self.default!r})"
199+
)
193200
return (
194201
"Field("
195202
f"column={self.name!r}, "

datamodel/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
__title__ = 'python-datamodel'
55
__description__ = ('simple library based on python +3.8 to use Dataclass-syntax'
66
'for interacting with Data')
7-
__version__ = '0.8.6'
7+
__version__ = '0.8.7'
88
__author__ = 'Jesus Lara'
99
__author_email__ = '[email protected]'
1010
__license__ = 'BSD'

0 commit comments

Comments
 (0)