betty.porters.omit_field module#

Porters to conditionally port field data.

final class betty.porters.omit_field.OmitFieldPorter#

Bases: FieldPorter, Generic

Conditionally port field data.

__init__(field: FieldDefinition[OwnerT, DataT, DataDefinition, FieldPorter[OwnerT, DataT]], omit_dump: Callable[[DataT], bool] | OmitDump[OwnerT, DataT], /)#
dump(owner: OwnerT, data: DataT, /) PortableData | NothingType#

Dump data to its portable form.

load(data: PortableData, /) DataT#

Load data from its portable form.

classmethod new(omit_dump: Callable[[NewDataT], bool] | OmitDump[OwnerT, NewDataT], /) FieldDefinitionFeatureManufacturer[OmitFieldPorter[OwnerT, NewDataT], Any, NewDataT]#

Create a field manufacturer to create a new porter.

classmethod new_is_empty(field: FieldDefinition[OwnerT, NewDataT]) OmitFieldPorter[OwnerT, NewDataT]#

Create a new porter that omits dumps if the data is empty.

classmethod new_is_none(field: FieldDefinition[OwnerT, DataT]) OmitFieldPorter[OwnerT, DataT]#

Create a new porter that omits dumps if the data is None.