django-ninja icon indicating copy to clipboard operation
django-ninja copied to clipboard

OpenAPI Docs does not display example values of item when using pagination

Open esc5221 opened this issue 2 years ago • 0 comments

When using pagination in view function, generated OpenAPI docs do not show example values of the items Schemas.

Example API codes

from ninja.pagination import paginate

@router.get("/test/list/", response=List[AssetHistorySchema])
def retrieve_list(request):
    ...
    return schema_list

@router.get("/test/paged_list/", response=List[AssetHistorySchema])
@paginate()
def retrieve_paged_list(request):
    ...
    return schema_list

Comparing OpenAPI example values (w/, w/o pagination)

Without pagination With pagination
image image
  • compared to when pagination is not used, adding pagination to API makes example value not visible.

https://github.com/vitalik/django-ninja/blob/9b27910f689417602e9061eb85aa62fee9df0c09/ninja/pagination.py#L212 It looks like defalut value of Output Scehma ([]) hides the items schemas' default values. I prefer to see the inside example values(like when i don't use pagination..) Is there any reason for this behavior? I've made PR resolving this issue. https://github.com/vitalik/django-ninja/pull/559 Thanks.

esc5221 avatar Sep 08 '22 03:09 esc5221