jsonmodels icon indicating copy to clipboard operation
jsonmodels copied to clipboard

ListField `items_types` parameter should be required

Open avrahamshukron opened this issue 8 years ago • 0 comments

Right now this parameter has a None default value, which means that the actual value will be an empty tuple.

This creates inconsistent behavior:

class Foo(Base):
    l = ListField()  # Look ma, no `items_types`!

f = Foo()
f.l.append("a")  # works

# But look at this:
f = Foo(l=["a"])
Traceback (most recent call last):
 ...
ValidationError: Cannot decide which type to choose from "".

Inconsistency: Validation during __init__ is not the same as when using append.

avrahamshukron avatar Oct 09 '17 21:10 avrahamshukron