betty.model.association module¶
Entity associations.
- final class betty.model.association.AssociationRegistry[source]¶
Bases:
objectInspect any known entity type associations.
- exception betty.model.association.AssociationRequired[source]¶
Bases:
RuntimeErrorRaised when an operation cannot be performed because the association in question is required.
- class betty.model.association.BidirectionalToMany[source]¶
Bases:
Generic[_OwnerT,_AssociateT],_ToManyAssociation[_OwnerT,_AssociateT],_BidirectionalAssociation[_OwnerT,_AssociateT]A bidirectional *-to-many entity type association.
- class betty.model.association.BidirectionalToOne[source]¶
Bases:
Generic[_OwnerT,_AssociateT],_ToOneAssociation[_OwnerT,_AssociateT],_BidirectionalAssociation[_OwnerT,_AssociateT]A bidirectional *-to-one entity type association.
- class betty.model.association.BidirectionalToZeroOrOne[source]¶
Bases:
Generic[_OwnerT,_AssociateT],_ToZeroOrOneAssociation[_OwnerT,_AssociateT],_BidirectionalAssociation[_OwnerT,_AssociateT]A bidirectional *-to-zero-or-one entity type association.
- class betty.model.association.TemporaryToManyResolver[source]¶
Bases:
Generic[_EntityT],_TemporaryResolver[_EntityT],ToManyResolver[_EntityT]A ‘temporary’ to-many resolver.
This is helpful to satisfy association requirements in multiple steps. Users MUST ensure that this resolver is replaced by a real value, because the resolver will never be able to resolve itself.
- class betty.model.association.TemporaryToOneResolver[source]¶
Bases:
Generic[_EntityT],_TemporaryResolver[_EntityT],ToOneResolver[_EntityT]A ‘temporary’ to-one resolver.
This is helpful to satisfy association requirements in multiple steps. Users MUST ensure that this resolver is replaced by a real value, because the resolver will never be able to resolve itself.
- class betty.model.association.TemporaryToZeroOrOneResolver[source]¶
Bases:
Generic[_EntityT],_TemporaryResolver[_EntityT],ToZeroOrOneResolver[_EntityT]A ‘temporary’ to-zero-or-one resolver.
This is helpful to satisfy association requirements in multiple steps. Users MUST ensure that this resolver is replaced by a real value, because the resolver will never be able to resolve itself.
- class betty.model.association.ToManyResolver[source]¶
Bases:
Generic[_EntityT],_Resolver[Iterable[_EntityT]]An object that can resolve to a collection of entities.
- class betty.model.association.ToOneResolver[source]¶
Bases:
Generic[_EntityT],_Resolver[_EntityT]An object that can resolve to an entity.
- class betty.model.association.ToZeroOrOneResolver[source]¶
Bases:
Generic[_EntityT],_Resolver[_EntityT|None]An object that can optionally resolve to an entity.
- final class betty.model.association.UnidirectionalToMany[source]¶
Bases:
Generic[_OwnerT,_AssociateT],_ToManyAssociation[_OwnerT,_AssociateT]A unidirectional to-many entity type association.
- final class betty.model.association.UnidirectionalToOne[source]¶
Bases:
Generic[_OwnerT,_AssociateT],_ToOneAssociation[_OwnerT,_AssociateT]A unidirectional to-one entity type association.