api.form

Attributes

ValidatorAdapter

_A

_V

registry

REQUIRED_DEPENDENT

validate_hostname

Classes

AdapterRegistry

Keeps track of all the adapters and WTForms field types

BaseAdapter

Provides utility functions for all adapters.

StringFieldAdapter

Provides utility functions for all adapters.

EmailFieldAdapter

Provides utility functions for all adapters.

URLFieldAdapter

Provides utility functions for all adapters.

DateFieldAdapter

Provides utility functions for all adapters.

DateTimeFieldAdapter

Provides utility functions for all adapters.

TimeFieldAdapter

Provides utility functions for all adapters.

DecimalFieldAdapter

Provides utility functions for all adapters.

IntegerFieldAdapter

Provides utility functions for all adapters.

RadioFieldAdapter

Provides utility functions for all adapters.

MultiCheckboxFieldAdapter

Provides utility functions for all adapters.

FileUpload

!!! abstract "Usage Documentation"

UploadFieldAdapter

Provides utility functions for all adapters.

UploadMultipleFieldAdapter

Provides utility functions for all adapters.

Functions

adapt_length(→ Any)

adapt_regexp(→ Any)

adapt_number_range(→ Any)

adapt_valid_date_range(→ Any)

adapt_stdnum(→ Any)

adapt_file_size_limit(→ Any)

validate_and_coerce_url(→ str | None)

mimetypes_validator(...)

dependency_fulfilled(→ bool)

model_from_form(→ type[pydantic.BaseModel])

Module Contents

type api.form.ValidatorAdapter = Callable[[T], Any][source]
api.form._A[source]
api.form._V[source]
class api.form.AdapterRegistry[source]

Keeps track of all the adapters and WTForms field types they are registered for, making sure each adapter is only instantiated once.

adapter_map: dict[str, BaseAdapter][source]
validator_map: dict[type[Any], ValidatorAdapter[Any]][source]
register_for(*types: str) collections.abc.Callable[[type[_A]], type[_A]][source]

Decorator to register a field adapter.

validator(validator: type[Any]) collections.abc.Callable[[_V], _V][source]

Decorator to register a validator adapter.

adapt(field: wtforms.Field) collections.abc.Generator[Any][source]

Adapts the WTForms field to a pydantic field yielding a sequence of values starting with a type form, followed by any number of pydantic metadata objects.

This output will get unpacked into Annotated.

adapt_validator(validator: onegov.form.types.Validator[Any, Any]) Any[source]
api.form.registry[source]
api.form.adapt_length(validator: wtforms.validators.Length) Any[source]
api.form.adapt_regexp(validator: wtforms.validators.Regexp) Any[source]
api.form.adapt_number_range(validator: wtforms.validators.NumberRange) Any[source]
api.form.adapt_valid_date_range(validator: onegov.form.validators.ValidDateRange) Any[source]
api.form.adapt_stdnum(validator: onegov.form.validators.Stdnum) Any[source]
api.form.adapt_file_size_limit(validator: onegov.form.validators.FileSizeLimit) Any[source]
api.form.REQUIRED_DEPENDENT[source]
class api.form.BaseAdapter[source]

Bases: abc.ABC

Provides utility functions for all adapters.

handle_scalar_field_type(t: TypeForm[Any], field: wtforms.Field) collections.abc.Generator[Any][source]
handle_sequence_field_type(t: TypeForm[Any], field: wtforms.Field) collections.abc.Generator[Any][source]
adapt_validators(validators: collections.abc.Sequence[onegov.form.types.Validator[Any, Any]] | None) collections.abc.Generator[Any][source]
abstractmethod __call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.StringFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.EmailFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
api.form.validate_hostname[source]
api.form.validate_and_coerce_url(value: pydantic.HttpUrl | None) str | None[source]
class api.form.URLFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.DateFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.DateTimeFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.TimeFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.DecimalFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.IntegerFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.RadioFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.MultiCheckboxFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.FileUpload(/, **data: Any)[source]

Bases: pydantic.BaseModel

!!! abstract “Usage Documentation”

[Models](../concepts/models.md)

A base class for creating Pydantic models.

Attributes:

__class_vars__: The names of the class variables defined on the model. __private_attributes__: Metadata about the private attributes of the model. __signature__: The synthesized __init__ [Signature][inspect.Signature] of the model.

__pydantic_complete__: Whether model building is completed, or if there are still undefined fields. __pydantic_core_schema__: The core schema of the model. __pydantic_custom_init__: Whether the model has a custom __init__ function. __pydantic_decorators__: Metadata containing the decorators defined on the model.

This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.

__pydantic_generic_metadata__: A dictionary containing metadata about generic Pydantic models.

The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.

__pydantic_parent_namespace__: Parent namespace of the model, used for automatic rebuilding of models. __pydantic_post_init__: The name of the post-init method for the model, if defined. __pydantic_root_model__: Whether the model is a [RootModel][pydantic.root_model.RootModel]. __pydantic_serializer__: The pydantic-core SchemaSerializer used to dump instances of the model. __pydantic_validator__: The pydantic-core SchemaValidator used to validate instances of the model.

__pydantic_fields__: A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. __pydantic_computed_fields__: A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.

__pydantic_extra__: A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra]

is set to ‘allow’.

__pydantic_fields_set__: The names of fields explicitly set during instantiation. __pydantic_private__: Values of private attributes set on the model instance.

filename: str[source]
data: pydantic.Base64Bytes[source]
api.form.mimetypes_validator(mimetypes: set[str]) collections.abc.Callable[[onegov.core.types.FileDict], onegov.core.types.FileDict][source]
class api.form.UploadFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
class api.form.UploadMultipleFieldAdapter[source]

Bases: BaseAdapter

Provides utility functions for all adapters.

__call__(field: wtforms.Field) collections.abc.Generator[Any][source]
api.form.dependency_fulfilled(self: onegov.form.core.FieldDependency, obj: object) bool[source]
api.form.model_from_form(form: onegov.form.Form) type[pydantic.BaseModel][source]