Root Model
RootModel class and type definitions.
Bases: BaseModel, Generic[RootModelRootType]
A Pydantic BaseModel for the root object of the model.
The root object of the model.
Type: RootModelRootType
Whether the model is a RootModel.
Private fields in the model.
Extra fields in the model.
@classmethod
def model_construct(
cls,
root: RootModelRootType,
_fields_set: set[str] | None = None,
) -> Self
Create a new model using the provided root object and update fields set.
Self — The new model.
The root object of the model.
The set of fields to be updated.
NotImplemented— If the model is not a subclass ofRootModel.
def model_dump(
mode: Literal['json', 'python'] | str = 'python',
include: Any = None,
exclude: Any = None,
context: dict[str, Any] | None = None,
by_alias: bool | None = None,
exclude_unset: bool = False,
exclude_defaults: bool = False,
exclude_none: bool = False,
exclude_computed_fields: bool = False,
round_trip: bool = False,
warnings: bool | Literal['none', 'warn', 'error'] = True,
serialize_as_any: bool = False,
) -> Any
This method is included just to get a more accurate return type for type checkers.
It is included in this if TYPE_CHECKING: block since no override is actually necessary.
See the documentation of BaseModel.model_dump for more details about the arguments.
Generally, this method will have a return type of RootModelRootType, assuming that RootModelRootType is
not a BaseModel subclass. If RootModelRootType is a BaseModel subclass, then the return
type will likely be dict[str, Any], as model_dump calls are recursive. The return type could
even be something different, in the case of a custom serializer.
Thus, Any is used here to catch all of these cases.