Skip to content

Commit 015c887

Browse files
committed
fixes and docs customization
1 parent 6554f50 commit 015c887

File tree

1 file changed

+11
-9
lines changed
  • services/api-server/src/simcore_service_api_server/models

1 file changed

+11
-9
lines changed

services/api-server/src/simcore_service_api_server/models/pagination.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,34 @@
99
from collections.abc import Sequence
1010
from typing import Any, ClassVar, Generic, TypeAlias, TypeVar
1111

12-
from fastapi_pagination.customization import CustomizedPage, UseParamsFields
12+
from fastapi import Query
13+
from fastapi_pagination.customization import CustomizedPage, UseName, UseParamsFields
1314
from fastapi_pagination.limit_offset import LimitOffsetParams as _LimitOffsetParams
1415
from fastapi_pagination.links import LimitOffsetPage as _LimitOffsetPage
1516
from models_library.rest_pagination import (
1617
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE,
1718
MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE,
1819
)
1920
from models_library.utils.pydantic_tools_extension import FieldNotRequired
20-
from pydantic import Field, NonNegativeInt, validator
21+
from pydantic import NonNegativeInt, validator
2122
from pydantic.generics import GenericModel
2223

2324
T = TypeVar("T")
2425

25-
26-
# NOTE: same pagination limits and defaults as web-server,
27-
# otherwise it is more difficult to sync
2826
Page = CustomizedPage[
2927
_LimitOffsetPage[T],
28+
# Customizes the default and maximum to fit those of the web-server. It simplifies interconnection
3029
UseParamsFields(
31-
limit=Field(
32-
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE, ge=1, le=MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE
30+
limit=Query(
31+
DEFAULT_NUMBER_OF_ITEMS_PER_PAGE,
32+
ge=1,
33+
le=MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE,
34+
description="Page size limit",
3335
)
3436
),
37+
# Renames class for the openapi.json to make the python-client's name models shorter
38+
UseName(name="Page"),
3539
]
36-
# NOTE: Renamed to make shorter clients name models
37-
Page.__name__ = "Page" # type: ignore
3840

3941
PaginationParams: TypeAlias = _LimitOffsetParams
4042

0 commit comments

Comments
 (0)