![](/img/trans.png)
[英]django Rest Framework - ViewSet with custom list view and URL parameter
[英]Django Rest Framework custom schema for view in viewset
我有一個使用Django和Django REST Framework構建的API。 我有一個模型返回一些構建的JSON,它與典型的Django模型不對應。 因此,似乎利用有關Django模型的知識的自動文檔功能對我的一些視圖不起作用。
特別是,我有一個viewset返回一些典型的API視圖(如對象列表),以及一些返回一些自定義對象的視圖。 我想為這些自定義對象構建文檔,但我不確定如何覆蓋視圖集中特定端點的模式。 如何覆蓋為DRF視圖集中的單個視圖生成的模式?
DRF似乎為視圖提供了此功能 ,但我想對Viewsets執行相同的操作。
好的,經過大量的嘗試 - 失敗 - 重試后,我終於讓它工作 - 你失去了一些自動(神奇)內省,比如id
路徑參數和從文檔字符串中獲取的描述,但我還是值得的:
custom_schema = ManualSchema(
fields=[
coreapi.Field(
"id",
required=True,
location="path",
schema=coreschema.String(
title="ID",
description="Foobar ID.",
)
),
coreapi.Field(
"foobar",
location="query",
schema=coreschema.String(
title="Foobar",
description="Foobar?",
)
),
],
description="Foobar!",
)
class FoobarViewSet(viewsets.ReadOnlyModelViewSet):
@action(methods=["get"], detail=True, schema=custom_schema)
def foobar(self, request, id=None):
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.