harp_apps.storage.settings.database¶
- class DatabaseSettings[source]¶
Bases:
Configurable
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.
- model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}¶
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[Dict[str, FieldInfo]] = {'url': FieldInfo(annotation=MultiHostUrl, required=False, default=MultiHostUrl('sqlite+aiosqlite:///:memory:?cache=shared'), metadata=[UrlConstraints(max_length=None, allowed_schemes=['mysql', 'mysql+aiomysql', 'mysql+asyncmy', 'postgresql', 'postgresql+asyncpg', 'sqlite', 'sqlite+aiosqlite'], host_required=True, default_host=None, default_port=None, default_path=None), BeforeValidator(func=<function _unwrap_sqlalchemy_urls>, json_schema_input_type=PydanticUndefined), AfterValidator(func=<function _fix_unasync_dsns>)])}¶
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.
This replaces Model.__fields__ from Pydantic V1.
- url: Annotated[MultiHostUrl, UrlConstraints(max_length=None, allowed_schemes=['mysql', 'mysql+aiomysql', 'mysql+asyncmy', 'postgresql', 'postgresql+asyncpg', 'sqlite', 'sqlite+aiosqlite'], host_required=True, default_host=None, default_port=None, default_path=None), BeforeValidator(func=_unwrap_sqlalchemy_urls, json_schema_input_type=PydanticUndefined), AfterValidator(func=_fix_unasync_dsns)]¶