dependencies
Application dependency providers.
create_collection_dependencies ¶
Creates a dictionary of provides for pagination endpoints. Returns
dict[str, Provide]
provide_created_filter ¶
provide_created_filter(
before=Parameter(query="created-before", default=None, required=False),
after=Parameter(query="created-after", default=None, required=False),
)
Return type consumed by Repository.filter_on_datetime_field().
Parameters¶
datetime | None
Filter for records updated before this date/time.
datetime | None
Filter for records updated after this date/time.
provide_filter_dependencies ¶
provide_filter_dependencies(
created_filter=Dependency(skip_validation=True),
updated_filter=Dependency(skip_validation=True),
id_filter=Dependency(skip_validation=True),
limit_offset=Dependency(skip_validation=True),
)
Common collection route filtering dependencies. Add all filters to any route by including this function as a dependency, e.g:
@get
def get_collection_handler(filters: Filters) -> ...:
...
The dependency is provided at the application layer, so only need to inject the dependency where necessary.
Parameters¶
repository.CollectionFilter
Filter for scoping query to limited set of identities.
repository.BeforeAfter
Filter for scoping query to instance creation date/time.
repository.BeforeAfter
Filter for scoping query to instance update date/time.
repository.LimitOffset
Filter for query pagination.
Returns¶
list[FilterTypes] List of filters parsed from connection.
provide_id_filter ¶
provide_limit_offset_pagination ¶
provide_limit_offset_pagination(
page=Parameter(ge=1, default=1, required=False),
page_size=Parameter(
query="page-size", ge=1, default=settings.api.DEFAULT_PAGINATION_LIMIT, required=False
),
)
Return type consumed by Repository.apply_limit_offset_pagination().
Parameters
int
LIMIT to apply to select.
int
OFFSET to apply to select.
provide_updated_filter ¶
provide_updated_filter(
before=Parameter(query="updated-before", default=None, required=False),
after=Parameter(query="updated-after", default=None, required=False),
)
Return type consumed by Repository.filter_on_datetime_field().
Parameters
datetime | None
Filter for records updated before this date/time.
datetime | None
Filter for records updated after this date/time.