Issue
Let's say I have some BaseModel
, and I want to check that it's options
list is not empty. I can perfectly do it with a validator
:
class Trait(BaseModel):
name: str
options: List[str]
@validator("options")
def options_non_empty(cls, v):
assert len(v) > 0
return v
Are there any other, more elegant, way to do this?
Solution
If you want to use a @validator
:
return v if v else doSomething
Python assumes boolean-ess of an empty list as False
If you don't want to use a @validator
:
In Pydantic, use conlist
:
from pydantic import BaseModel, conlist
from typing import List
class Trait(BaseModel):
name: str
options: conlist(str, min_length=1)
Answered By - Kirtiman Sinha
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.