ModelDTO class.
Attributes
background_color: Optional
icon_color: Optional
icon_technical_name: str
icon_type: TypingIconType
Functions
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError
][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
self
is explicitly positional-only to allow self
as a field name.
Name | Type | Default value | Description |
---|---|---|---|
data | Any |
TypingStyle |
Method to clone the style and override some values
Name | Type | Default value | Description |
---|---|---|---|
icon_technical_name | str | Technical name of the icon if provided, the icon_type must also be provided, defaults to none , optional | |
icon_type | TypingIconType | Type of the icon if provided, the icon_technical_name must also be provided, defaults to none , optional | |
background_color | str | Background color, defaults to none , optional | |
icon_color | TypingIconColor | Icon color, defaults to none , optional |
TypingStyle |
Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use model_copy
instead.
If you need include
or exclude
, use:
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
Args: include: Optional set or mapping specifying which fields to include in the copied model. exclude: Optional set or mapping specifying which fields to exclude in the copied model. update: Optional dictionary of field-value pairs to override field values in the copied model. deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns: A copy of the model with included, excluded and updated fields as specified.
Name | Type | Default value | Description |
---|---|---|---|
include | AbstractSetIntStr | MappingIntStrAny | None | ||
exclude | AbstractSetIntStr | MappingIntStrAny | None | ||
update | Dict[str, Any] | None | ||
deep | bool | False |
Model |
Name | Type | Default value | Description |
---|---|---|---|
style | TypingStyle |
Name | Type | Default value | Description |
---|---|---|---|
include | IncEx | ||
exclude | IncEx | ||
by_alias | bool | False | |
exclude_unset | bool | False | |
exclude_defaults | bool | False | |
exclude_none | bool | False |
Dict[str, Any] |
Method to fill the background color and icon color if they are not set.
Name | Type | Default value | Description |
---|---|---|---|
include | IncEx | ||
exclude | IncEx | ||
by_alias | bool | False | |
exclude_unset | bool | False | |
exclude_defaults | bool | False | |
exclude_none | bool | False | |
encoder | Callable[[Any], Any] | None | PydanticUndefined | |
models_as_dict | bool | PydanticUndefined | |
dumps_kwargs | Any |
str |
Usage docs: https://docs.pydantic.dev/2.7/concepts/serialization/#model_copy
Returns a copy of the model.
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to True
to make a deep copy of the model.
Returns: New model instance.
Name | Type | Default value | Description |
---|---|---|---|
update | dict[str, Any] | None | ||
deep | bool | False |
Model |
Usage docs: https://docs.pydantic.dev/2.7/concepts/serialization/#modelmodel_dump
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
Args:
mode: The mode in which to_python
should run.
If mode is 'json', the output will only contain JSON serializable types.
If mode is 'python', the output may contain non-JSON-serializable Python objects.
include: A set of fields to include in the output.
exclude: A set of fields to exclude from the output.
context: Additional context to pass to the serializer.
by_alias: Whether to use the field's alias in the dictionary key if defined.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of None
.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [PydanticSerializationError
][pydantic_core.PydanticSerializationError].
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
Returns: A dictionary representation of the model.
Name | Type | Default value | Description |
---|---|---|---|
mode | Literal['json', 'python'] | str | python | |
include | IncEx | ||
exclude | IncEx | ||
context | dict[str, Any] | 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 |
dict[str, Any] |
Usage docs: https://docs.pydantic.dev/2.7/concepts/serialization/#modelmodel_dump_json
Generates a JSON representation of the model using Pydantic's to_json
method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of None
.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [PydanticSerializationError
][pydantic_core.PydanticSerializationError].
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
Returns: A JSON string representation of the model.
Name | Type | Default value | Description |
---|---|---|---|
indent | int | None | ||
include | IncEx | ||
exclude | IncEx | ||
context | dict[str, Any] | 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 |
str |
Override this method to perform additional initialization after __init__
and model_construct
.
This is useful if you want to do some validation that requires the entire model to be initialized.
Name | Type | Default value | Description |
---|---|---|---|
_BaseModel__context | Any |
Convert a ModelDTO to a json dictionary. This dict can be serialized.
dict |
Convert a ModelDTO to a json string.
str |
Name | Type | Default value | Description |
---|---|---|---|
_fields_set | set[str] | None | ||
values | Any |
Model |
Create a ModelDTO from a json.
Name | Type | Default value | Description |
---|---|---|---|
json_ | dict |
BaseModelDTOType |
Create a list of ModelDTO from a list of json.
Name | Type | Default value | Description |
---|---|---|---|
json_list | list |
List |
Create a ModelDTO from a string json.
Name | Type | Default value | Description |
---|---|---|---|
str_json | str |
BaseModelDTOType |
Name | Type | Default value | Description |
---|---|---|---|
obj | Any |
Model |
Create a dict of ModelDTO from a dict of json.
Name | Type | Default value | Description |
---|---|---|---|
json_dict | dict |
Dict |
Creates a new instance of the Model
class with validated data.
Creates a new model setting __dict__
and __pydantic_fields_set__
from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
model_construct()
generally respects the model_config.extra
setting on the provided model.
That is, if model_config.extra == 'allow'
, then all extra passed values are added to the model instance's __dict__
and __pydantic_extra__
fields. If model_config.extra == 'ignore'
(the default), then all extra passed values are ignored.
Because no validation is performed with a call to model_construct()
, having model_config.extra == 'forbid'
does not result in
an error if extra values are passed, but they will be ignored.
Args: _fields_set: The set of field names accepted for the Model instance. values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the Model
class with validated data.
Name | Type | Default value | Description |
---|---|---|---|
_fields_set | set[str] | None | ||
values | Any |
Model |
Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
GenerateJsonSchema
with your desired modifications
mode: The mode in which to generate the schema.
Returns: The JSON schema for the given model class.
Name | Type | Default value | Description |
---|---|---|---|
by_alias | bool | True | |
ref_template | str | #/$defs/{model} | |
schema_generator | type[GenerateJsonSchema] | <class 'pydantic.json_schema.GenerateJsonSchema'> | |
mode | JsonSchemaMode | validation |
dict[str, Any] |
Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
Model
with 2 type variables and a concrete model Model[str, int]
,
the value (str, int)
would be passed to params
.
Returns:
String representing the new class where params
are passed to cls
as type variables.
Raises: TypeError: Raised when trying to generate concrete names for non-generic models.
Name | Type | Default value | Description |
---|---|---|---|
params | tuple[type[Any], ...] |
str |
Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to False
.
raise_errors: Whether to raise errors, defaults to True
.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to None
.
Returns:
Returns None
if the schema is already "complete" and rebuilding was not required.
If rebuilding was required, returns True
if rebuilding was successful, otherwise False
.
Name | Type | Default value | Description |
---|---|---|---|
force | bool | False | |
raise_errors | bool | True | |
_parent_namespace_depth | int | 2 | |
_types_namespace | dict[str, Any] | None |
bool | None |
Validate a pydantic model instance.
Args: obj: The object to validate. strict: Whether to enforce types strictly. from_attributes: Whether to extract data from object attributes. context: Additional context to pass to the validator.
Raises: ValidationError: If the object could not be validated.
Returns: The validated model instance.
Name | Type | Default value | Description |
---|---|---|---|
obj | Any | ||
strict | bool | None | ||
from_attributes | bool | None | ||
context | dict[str, Any] | None |
Model |
Usage docs: https://docs.pydantic.dev/2.7/concepts/json/#json-parsing
Validate the given JSON data against the Pydantic model.
Args: json_data: The JSON data to validate. strict: Whether to enforce types strictly. context: Extra variables to pass to the validator.
Returns: The validated Pydantic model.
Raises:
ValueError: If json_data
is not a JSON string.
Name | Type | Default value | Description |
---|---|---|---|
json_data | str | bytes | bytearray | ||
strict | bool | None | ||
context | dict[str, Any] | None |
Model |
Validate the given object contains string data against the Pydantic model.
Args: obj: The object contains string data to validate. strict: Whether to enforce types strictly. context: Extra variables to pass to the validator.
Returns: The validated Pydantic model.
Name | Type | Default value | Description |
---|---|---|---|
obj | Any | ||
strict | bool | None | ||
context | dict[str, Any] | None |
Model |
Name | Type | Default value | Description |
---|---|---|---|
path | str | Path | ||
content_type | str | None | ||
encoding | str | utf8 | |
proto | DeprecatedParseProtocol | None | ||
allow_pickle | bool | False |
Model |
Name | Type | Default value | Description |
---|---|---|---|
obj | Any |
Model |
Name | Type | Default value | Description |
---|---|---|---|
b | str | bytes | ||
content_type | str | None | ||
encoding | str | utf8 | |
proto | DeprecatedParseProtocol | None | ||
allow_pickle | bool | False |
Model |
Name | Type | Default value | Description |
---|---|---|---|
by_alias | bool | True | |
ref_template | str | #/$defs/{model} |
Dict[str, Any] |
Name | Type | Default value | Description |
---|---|---|---|
by_alias | bool | True | |
ref_template | str | #/$defs/{model} | |
dumps_kwargs | Any |
str |
Name | Type | Default value | Description |
---|---|---|---|
localns | Any |
Name | Type | Default value | Description |
---|---|---|---|
value | Any |
Model |
Name | Type | Default value | Description |
---|---|---|---|
background_color | str |
str |
Name | Type | Default value | Description |
---|---|---|---|
icon_color | TypingIconColor |
TypingIconColor |
Use an icon from the community icon library. List of available icons are here : https://constellab.community/icons
If not defined the color is calculated based on background color to be visible. defaults to None
Name | Type | Default value | Description |
---|---|---|---|
icon_technical_name | str | Technical name of the icon | |
background_color | str | Background color of the typing as hex color code, defaults to none , optional | |
icon_color | Optional | Icon color (black or white) when displayed over the background color. [typingiconcolor], optional |
TypingStyle |
Use an image from the community image library. List of available images are here : https://constellab.community/icons
Name | Type | Default value | Description |
---|---|---|---|
icon_technical_name | str | Technical name of the image | |
background_color | str | Background color of the typing, defaults to none , optional |
TypingStyle |
TypingStyle |
TypingStyle |
TypingStyle |
TypingStyle |
Name | Type | Default value | Description |
---|---|---|---|
color | str |
TypingIconColor |
Use an icon from the material icon library. List of available icons are here : https://fonts.google.com/icons?icon.set=Material+Icons
If not defined the color is calculated based on background color to be visible. defaults to None
Name | Type | Default value | Description |
---|---|---|---|
material_icon_name | str | ||
background_color | str | Background color of the typing as hex color code, defaults to none , optional | |
icon_color | Optional | Icon color (black or white) when displayed over the background color [typingiconcolor], optional |
TypingStyle |