欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

django-rest-swagger對(duì)API接口注釋的方法

 更新時(shí)間:2019年08月29日 10:33:37   作者:傲嬌的草履蟲  
今天小編就為大家分享一篇django-rest-swagger對(duì)API接口注釋的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

Swagger是一個(gè)API開發(fā)者的工具框架,用于生成、描述、調(diào)用和可視化RESTful風(fēng)格的Web服務(wù)。總體目標(biāo)是使客戶端和文件系統(tǒng)服務(wù)器以同樣的速度來更新,方法,參數(shù)和模型緊密集成到服務(wù)器端的代碼中,允許API始終保持同步。

在使用 django-rest-framework 進(jìn)行API開發(fā),可以使用django-rest-swagger接入swagger自動(dòng)生成接口文檔。

1. 安裝django-rest-swagger

pip install django-rest-swagger

2.配置settings.py

INSTALLED_APPS = [
 ...

 'rest_framework_swagger'

 ...
]

3. views.py

該博文的項(xiàng)目是django-rest-framework中文站點(diǎn)的例子:https://q1mi.github.io/Django-REST-framework-documentation

當(dāng)需要對(duì)接口的各種方法進(jìn)行注釋時(shí),直接在該類下添加注釋,如下所示。需要注意是的:注釋的方法名稱(如 get、post)要對(duì)應(yīng)該類所含的方法名稱

class SnippetList(generics.ListCreateAPIView):
 """
 get:
 Return all snippets.
 post:
 Create a new snippet instance.
 """

 queryset = Snippet.objects.all()
 serializer_class = SnippetSerializer
 permission_classes = (permissions.IsAuthenticatedOrReadOnly,)

 def perform_create(self, serializer):
 serializer.save(owner=self.request.user)


class SnippetDetail(generics.RetrieveUpdateDestroyAPIView):
 """
 get:
 Return a snippet instance.
 put:
 Update a snippet instance.
 patch:
 Update a snippet instance.
 delete:
 Delete a snippet instance.
 """
 queryset = Snippet.objects.all()
 serializer_class = SnippetSerializer
 permission_classes = (permissions.IsAuthenticatedOrReadOnly, IsOwnerOrReadOnly,)


class UserList(generics.ListAPIView):
 """
 get:
 Return all users
 """
 queryset = MyUser.objects.all()
 serializer_class = UserSerializer


class UserDetail(generics.RetrieveAPIView):
 """
 get:
 Return a user instance
 """
 queryset = MyUser.objects.all()
 serializer_class = UserSerializer


class SnippetHighlight(generics.GenericAPIView):
 """
 get:
 Return a highlight instance
 """
 queryset = Snippet.objects.all()
 renderer_classes = (renderers.StaticHTMLRenderer,)

 def get(self, request, *args, **kwargs):
 snippet = self.get_object()
 return Response(snippet.highlighted)

3.配置urls.py

from rest_framework.schemas import get_schema_view
from rest_framework_swagger.renderers import SwaggerUIRenderer, OpenAPICodec
schema_view = get_schema_view(title='API', renderer_classes=[SwaggerUIRenderer, OpenAPICodec])

urlpatterns = [
 
 ...

 url(r'docs/', schema_view, name='docs')

 ...
]

運(yùn)行manage.py后,瀏覽器訪問 http://127.0.0.1:8000/,可以看到以下內(nèi)容:

訪問 http://127.0.0.1:8000/docs/,可以看到接口文檔如下:

點(diǎn)擊打開snippets,可以看到如下,每個(gè)方法后面都有你在views.py中添加的注釋

點(diǎn)擊打開get方法,如下

以上這篇django-rest-swagger對(duì)API接口注釋的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)自動(dòng)打卡的示例代碼

    python實(shí)現(xiàn)自動(dòng)打卡的示例代碼

    這篇文章主要介紹了python實(shí)現(xiàn)自動(dòng)打卡的示例代碼,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-10-10
  • Python查詢?nèi)笔е档?種方法總結(jié)

    Python查詢?nèi)笔е档?種方法總結(jié)

    缺失值可能是數(shù)據(jù)科學(xué)中最不受歡迎的值,然而,它們總是在身邊。忽略缺失值也是不合理的,因此我們需要找到有效且適當(dāng)?shù)靥幚硭鼈兊姆椒?。本文總結(jié)了四個(gè)Python查詢?nèi)笔е档姆椒?,需要的可以參考一?/div> 2022-05-05
  • TensorFlow2中提供的幾種處理特征列的方法小結(jié)

    TensorFlow2中提供的幾種處理特征列的方法小結(jié)

    本文主要介紹了TensorFlow2中提供的幾種處理特征列的方法小結(jié),主要介紹了6種方式,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • Python面試之os.system()和os.popen()的區(qū)別詳析

    Python面試之os.system()和os.popen()的區(qū)別詳析

    Python調(diào)用Shell,有兩種方法:os.system(cmd)或os.popen(cmd)腳本執(zhí)行過程中的輸出內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于Python面試之os.system()和os.popen()區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • python跨文件使用全局變量的實(shí)現(xiàn)

    python跨文件使用全局變量的實(shí)現(xiàn)

    本文主要介紹了python跨文件使用全局變量的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Python標(biāo)準(zhǔn)庫之Math,Random模塊使用詳解

    Python標(biāo)準(zhǔn)庫之Math,Random模塊使用詳解

    math數(shù)學(xué)模塊和random隨機(jī)模塊是Python常用的標(biāo)準(zhǔn)庫之一。本文將詳細(xì)為大家介紹一下這兩個(gè)模塊的使用方法,需要的小伙伴可以參考一下
    2022-05-05
  • python中閉包Closure函數(shù)作為返回值的方法示例

    python中閉包Closure函數(shù)作為返回值的方法示例

    閉包(closure)是函數(shù)式編程的重要的語法結(jié)構(gòu),Python也支持這一特性,下面這篇文章主要給大家介紹了關(guān)于python中閉包Closure函數(shù)作為返回值的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-12-12
  • python中WSGI是什么,Python應(yīng)用WSGI詳解

    python中WSGI是什么,Python應(yīng)用WSGI詳解

    這篇文章主要介紹一下python中的WSGI, 小編在網(wǎng)上找了幾篇非常好的關(guān)于WSGI介紹,整理一下分享給大家。
    2017-11-11
  • python使用matplotlib繪制折線圖的示例代碼

    python使用matplotlib繪制折線圖的示例代碼

    這篇文章主要介紹了python使用matplotlib繪制折線圖的示例代碼,幫助大家更好的利用matplotlib繪制圖形,感興趣的朋友可以了解下
    2020-09-09
  • Python 操作 ElasticSearch的完整代碼

    Python 操作 ElasticSearch的完整代碼

    python提供了操作ElasticSearch 接口,因此要用python來操作ElasticSearch,這篇文章主要介紹了Python 操作 ElasticSearch,需要的朋友可以參考下
    2019-08-08

最新評(píng)論