RootModel
RootModelクラスとタイプの定義。
RootModel ¶
RootModel(
root: RootModelRootType = PydanticUndefined, **data
)
Bases: BaseModel, Generic[RootModelRootType]
Usage Documentation
モデルのルートオブジェクト用のPydanticBaseModelです。
Attributes:
| Name | Type | Description |
|---|---|---|
root |
RootModelRootType
|
モデルのルートオブジェクト。 |
__pydantic_root_model__ |
モデルがRootModelであるかどうか。 |
|
__pydantic_private__ |
モデル内のprivateフィールド。 |
|
__pydantic_extra__ |
モデル内の追加フィールド。 |
Source code in pydantic/root_model.py
61 62 63 64 65 66 67 68 69 | |
model_construct
classmethod
¶
指定されたルートオブジェクトを使用して新しいモデルを作成し、フィールドセットを更新します。
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
root |
RootModelRootType
|
モデルのルートオブジェクト。 |
required |
_fields_set |
set[str] | None
|
更新されるフィールドのセット。 |
None
|
Returns:
| Type | Description |
|---|---|
Self
|
新しいモデル。 |
Raises:
| Type | Description |
|---|---|
NotImplemented
|
モデルが |
Source code in pydantic/root_model.py
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | |
model_dump ¶
model_dump(
*,
mode: Literal["json", "python"] | str = "python",
include: Any = None,
exclude: Any = None,
context: dict[str, Any] | None = None,
by_alias: bool = False,
exclude_unset: bool = False,
exclude_defaults: bool = False,
exclude_none: bool = False,
round_trip: bool = False,
warnings: (
bool | Literal["none", "warn", "error"]
) = True,
serialize_as_any: bool = False
) -> Any
このメソッドは、型チェッカーの戻り値の型をより正確に取得するためだけに含まれています。
実際には上書きが必要ないので、このif TYPE_CHECKING:ブロックに含まれています。
引数の詳細については、BaseModel.model_dumpのドキュメントを参照してください。
一般に、RootModelRootTypeがBaseModelサブクラスではないと仮定すると、このメソッドの戻り値の型はRootModelRootTypeになります。RootModelRootTypeがBaseModelサブクラスである場合、戻り値の型はdict[str, Any]になります。これはmodel_dump呼び出しが再帰的であるためです。カスタムシリアライザの場合、戻り値の型は別のものになることもあります。
したがって、ここでは"Any"を使用して、これらのケースをすべてキャッチします。
Source code in pydantic/root_model.py
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 | |