DRF 自動生成介面文件

2022-07-03 21:51:09 字數 1719 閱讀 8879

rest framework可以自動幫助我們生成介面文件。

介面文件以網頁的方式呈現。

自動介面文件能生成的是繼承自apiview及其子類的檢視。

rest framewrok生成介面文件需要coreapi庫的支援

pip install coreapi

在總路由中新增介面文件路徑。

文件路由對應的檢視配置為rest_framework.documentation.include_docs_urls

引數title為介面文件**的標題。

from rest_framework.documentation import

include_docs_urls

urlpatterns =[

...url(r

'^docs/

', include_docs_urls(title='

my rest api'))

]

1) 單一方法的檢視,可直接使用類檢視的文件字串,如

class

departmentlistview(generics.listapiview):

"""返回所有部門資訊.

"""

2)包含多個方法的檢視,在類檢視的文件字串中,分開方法定義,如

class

departmentlistcreateview(generics.listcreateapiview):

"""get:

返回所有部門資訊.

post:

建立部門.

"""

3)對於檢視集viewset,仍在類檢視的文件字串中封開定義,但是應使用action名稱區分,如

class

departmentviewset(listmodelmixin, retrievemodelmixin, genericviewset):

"""list:

分頁查詢部門物件

retrieve:

查詢乙個部門資訊

latest:

查詢最新新增的部門

name:

修改部門名稱

"""

兩點說明:

1) 檢視集viewset中的retrieve名稱,在介面文件**中叫做read

2)引數的description需要在序列化器類的字段中以help_text選項定義,如:

class

departmentserializer(serializers.serializer):

...name = serializers.charfield(label='

部門名稱

', max_length=20,

help_text='

部門名稱')

...

class

departmentserializer2(serializers.modelserializer):

...class

meta:

...extra_kwargs =

}

drf 自動生成介面文件

1借助於第三方 coreapi,swagger 先安裝好這兩個模組 2在路由中 此處省略了自動生成的students路由 path docs include docs urls title 圖書管理系統api path books views.booklistcreateview.as view 3...

drf 自動生成介面文件

rest framewor可以自動幫助我們生成介面文件 介面文件以網頁的方式呈現 自動介面文件能生成的是繼承自apiview及其子類的檢視 rest framewrok生成介面文件需要coreapi庫的支援。pip install coreapi在總路由中新增介面路徑 文件路由對應的檢視配置為res...

drf自動生成介面文件

目錄rest framework可以自動幫助我們生成介面文件。介面文件以網頁的方式呈現。自動介面文件能生成的是繼承自apiview及其子類的檢視。rest framewrok生成介面文件需要coreapi庫的支援。pip install coreapi在總路由中新增介面文件路徑。文件路由對應的檢視配...