django rest framework 自定义额外的参数

一个好的Django专题少不了您的贡献:点我进入专题

自动生成的API文档参数不够用?自己造作呀~(如果有更好的实现欢迎投稿)


django rest framework 自定义额外的参数_第1张图片
效果图

GET 有两个方法(list(path:/api/mall/)与retrieve(path:/api/mall/{id}/)生成的),所以and双重判断路径

官方教程地址: autoschema

from ..mlogger import mlogger # 自定义的日志过滤器
import coreapi
from rest_framework.schemas import AutoSchema
# 自定义额外的参数
class MallViewSchema(AutoSchema):
    def get_manual_fields(self, path, method):
        mlogger.info('path:' + path)
        mlogger.info('method:' + method)
        extra_fields = []
        if method == 'GET' and path == '/api/mall/':
            extra_fields = [
                coreapi.Field(
                    "sss",
                    required=False,
                    location="path",
                    description='Cissty',
                ),
            ]
        manual_fields = super().get_manual_fields(path, method)
        return manual_fields + extra_fields

你可能感兴趣的:(django rest framework 自定义额外的参数)