首页 > 其他分享 >自动生成接口文档

自动生成接口文档

时间:2022-12-11 17:12:42浏览次数:40  
标签:接口 视图 生成 framework 文档 rest class

自动生成接口文档

目录
rest framework可以自动帮助生成接口文档

接口文档以网页的方式呈现

自动接口文档能生成的是继承自APIView及其子类的视图

1、安装依赖

rest framework生成接口文档需要coreapi库的支持

pip install coreapi

2、设置接口文档访问路径

在总路由中添加接口文档路径

文档路由对应的视图配置为rest_framework.documentation. include_docs_urls

from rest_framework.documentation import include_docs_urls
urlpatterns = [
    ...
    path('docs/',include_docs_urls(title='站点页面标题'))
]

3、文档描述说明的定义位置

  1. 单一方法的视图,可以i直接使用视图类的文档字符串,如:
class BookListView(ListAPIView):
    """
    返回所有图书信息
    """
  1. 包含多个方法的视图,在类视图的文档字符串中,分开方法定义,如:
class BookListAPIView(ListAPIView):
    """
    get:
    返回所有图书信息

    post:
    新建图书
    """
  1. 对于视图集ViewSet,仍在类视图的文档字符串中分开定义,但是应使用action名称区分,如:
from rest_framework import mixins
from rest_framework.viewsets import GenericViewSet

class BookInfoViewSet(mixins.ListModelMixin, mixins.RetrieveModelMixin, GenericViewSet):
   """
   list:
   返回图书列表数据

   retrieve:
   返回图书的详情数据

   latest:
   返回最新的图书数据

   read:
   修改图书的阅读量
   """

最后浏览器中输入,http://127.0.0.1:8000/docs/,报错

image-20221211121826453

需要在配置文件settings.py中设置如下:

REST_FRAMEWORK = {
    'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema',
    #默认用的是:  'rest_framework.schemas.openapi.AutoSchema',
}

image-20221211122824978

image-20221211122649995

注意:

  1. 视图集ViewSet中的retrieve名称在接口文档中叫做read
  2. 参数的Description需要在模型类或者序列化器类的字段中以help_text选项定义,如下:
class Book(BaseModel):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=32, verbose_name='书名', help_text='这里填写书名')
    price = models.DecimalField(max_digits=8, decimal_places=2, verbose_name='价格', help_text='这里填写书的价格')

或者

class BookModelSerializer(serializers.ModelSerializer):
    class Meta:
        list_serializer_class = BookListSerializer
        model = Book
        fields = '__all__'
        extra_kwargs = {
            'publish': {
                'required':True,
                'write_only': True,
                'help_text':'出版社'
            }   
        }

标签:接口,视图,生成,framework,文档,rest,class
From: https://www.cnblogs.com/zaosong/p/16973904.html

相关文章

  • 拓端tecdat|R语言编程指导蒙特卡洛计算和快速傅立叶变换计算矩生成函数
    R语言蒙特卡洛计算和快速傅立叶变换计算矩生成函数  对精算科学来说,当我们处理独立随机变量的总和时,特征函数很有趣,因为总和的特征函数是特征函数......
  • 使用swagger生成接口文档
    1、安装goget-ugithub.com/swaggo/swag/cmd/swaggoget-ugithub.com/swaggo/gin-swaggergoget-ugithub.com/swaggo/filesgoget-ugithub.com/alecthomas/t......
  • 【ASP.NET Core】MVC控制器的各种自定义:IActionHttpMethodProvider 接口
    IActionHttpMethodProvider接口的结构很简单,实现该接口只要实现一个属性即可——HttpMethods。该属性是一个字符串序列。这啥意思呢?这个字符串序列代表的就是受支持的HT......
  • 图文成片,文本批量生成短视频工具
    1、视频生成2、输入断句后的文案3、将文案根据短句分割,每句作为一条字幕4、根据字幕搜索表情包并选择设置5、利用语音合成手段合成配音6、重复3、4步骤,直到所有的字幕......
  • AI版「视频生成器」:一段文字就能生成视频
    AI人工智能系统,可以根据文字提示生成短视频。AI视频生成器是什么?它是一款非常实用的视频剪辑应用,它的视频剪辑功能,基本上满足了大部分人对视频制作的需求,它还会经常更新一......
  • 2023最新图文成片工具:文字生成视频,只需一步
    发现了「输入文字自动生成视频」的功能之后,笔者更是感到了官方的「保姆」心理。手动输入文字之后,软件可以自动根据文字推荐素材、生成录音、配好字幕BGM,并且获得一个不错......
  • 火了!快速批量生成短视频工具,导入文字自动转视频!
    从纯文字自媒体人到一键视频自媒体人,一键将文本图片转变为视频,是不是很方便?短视频的火爆,让许多人都纷纷去制作短视频,虽然有很多播放短视频的软件,但也有很多人始终没能找到......
  • 文字自动生成视频
    只要输入文字就能生成视频。这个神器简直就是自媒体人的福音,他可以帮你10秒钟快速制作成视频。直接把文案复制进去点击生成。AI就会自动进行语义分析。帮你找到与文字最......
  • 网络安全中接口测试的解决方案
    Eolink新一代API测试神器​​一、接口测试​​​​1、接口​​​​2、接口测试​​​​二、网络安全中的接口测试,具体场景​​​​1、接口安全测试​​​​2、传统测试工具......
  • Eolink神技之一、基于数据库智能生成API文档
    Eolink神技之一、基于数据库智能生成API文档目录​​Eolink神技之一、基于数据库智能生成API文档​​​​Eolink数据库智能API文档解决的问题​​​​演示流程​​​​一、......