中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

django-rest-swagger對API接口注釋的方法

發布時間:2020-08-21 16:28:16 來源:腳本之家 閱讀:287 作者:傲嬌的草履蟲 欄目:開發技術

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

在使用 django-rest-framework 進行API開發,可以使用django-rest-swagger接入swagger自動生成接口文檔。

1. 安裝django-rest-swagger

pip install django-rest-swagger

2.配置settings.py

INSTALLED_APPS = [
 ...

 'rest_framework_swagger'

 ...
]

3. views.py

該博文的項目是django-rest-framework中文站點的例子:https://q1mi.github.io/Django-REST-framework-documentation

當需要對接口的各種方法進行注釋時,直接在該類下添加注釋,如下所示。需要注意是的:注釋的方法名稱(如 get、post)要對應該類所含的方法名稱

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')

 ...
]

運行manage.py后,瀏覽器訪問 http://127.0.0.1:8000/,可以看到以下內容:

django-rest-swagger對API接口注釋的方法

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

django-rest-swagger對API接口注釋的方法

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

django-rest-swagger對API接口注釋的方法

點擊打開get方法,如下

django-rest-swagger對API接口注釋的方法

以上這篇django-rest-swagger對API接口注釋的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿荣旗| 昆山市| 获嘉县| 郎溪县| 濮阳县| 彩票| 日照市| 玉门市| 九寨沟县| 南充市| 互助| 方城县| 陵水| 祁连县| 禄劝| 天等县| 靖西县| 堆龙德庆县| 新巴尔虎左旗| 聂拉木县| 日喀则市| 凤冈县| 华阴市| 茶陵县| 靖宇县| 清苑县| 无极县| 尼勒克县| 武定县| 青岛市| 永平县| 平顶山市| 通辽市| 富平县| 汉沽区| 扎鲁特旗| 瑞金市| 读书| 江西省| 金秀| 高平市|