updated docs
This commit is contained in:
@@ -17,7 +17,10 @@ class ValidationParser:
|
||||
self.parse()
|
||||
|
||||
def parse(self):
|
||||
from ApiValidations.Request.base_validations import CrudRecords, PydanticBaseModel
|
||||
from ApiValidations.Request.base_validations import (
|
||||
CrudRecords,
|
||||
PydanticBaseModel,
|
||||
)
|
||||
|
||||
properties = dict(self.annotations.get("properties")).items()
|
||||
total_class_annotations = {
|
||||
@@ -26,7 +29,11 @@ class ValidationParser:
|
||||
**CrudRecords.__annotations__,
|
||||
}
|
||||
for key, value in properties:
|
||||
default, required, possible_types = dict(value).get("default", None), True, []
|
||||
default, required, possible_types = (
|
||||
dict(value).get("default", None),
|
||||
True,
|
||||
[],
|
||||
)
|
||||
if dict(value).get("anyOf", None):
|
||||
for _ in dict(value).get("anyOf") or []:
|
||||
type_opt = json.loads(json.dumps(_))
|
||||
@@ -47,10 +54,18 @@ class ValidationParser:
|
||||
field_type, required = "boolean", aoc == "<class 'bool'>"
|
||||
elif aoc in ("<class 'float'>", "typing.Optional[float]"):
|
||||
field_type, required = "float", aoc == "<class 'float'>"
|
||||
elif aoc in ("<class 'datetime.datetime'>", "typing.Optional[datetime.datetime]"):
|
||||
field_type, required = "datetime", aoc == "<class 'datetime.datetime'>"
|
||||
elif aoc in (
|
||||
"<class 'datetime.datetime'>",
|
||||
"typing.Optional[datetime.datetime]",
|
||||
):
|
||||
field_type, required = (
|
||||
"datetime",
|
||||
aoc == "<class 'datetime.datetime'>",
|
||||
)
|
||||
self.schema[key] = {
|
||||
"type": field_type, "required": required, "default": default
|
||||
"type": field_type,
|
||||
"required": required,
|
||||
"default": default,
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user