flask-restplus api目录页接口标题备注不显示问题

像下面这样,一部分显示了接口的标题,一部分没有显示
在这里插入图片描述
去查了官方文档也没有什么成果,搜了很多资料也没查到,结果一场意外发现,这居然和两个看起来完全不相关的东西相关,一个是我的token验证装饰器,一个是注释?!官方文档提供的@api.doc反而加不加都不影响!
当我去掉token验证,并在get方法里加上“”“获取所有奖项信息”“”的注释之后,标题就显示出来了
在这里插入图片描述
在这里插入图片描述
我看了半天没明白为什么我的装饰器会影响它的装饰器
在这里插入图片描述
于是试了一下,把token验证加到了整个flask-restplus api的最前面,就可以了
在这里插入图片描述
具体代码
__init__.py

from flask_restplus import Api
from flask import Blueprint
from app.main.controller.prize_controller import api as prize_ns
blueprint = Blueprint('api', __name__)

authorizations = {
    'apikey': {
        'type': 'apiKey',
        'in': 'header',
        'name': 'Authorization'
    }
}

api = Api(
    blueprint,
    title='抽奖项目接口',
    version='1.0',
    description='',
    authorizations=authorizations,
    security='apikey'
)
api.add_namespace(prize_ns, path='/api/prize')

app/main/controller.py

from app.main.util.dto import PrizeDto

api = PrizeDto.api
_prize = PrizeDto.prize


@access_role_type(role_type=[1])
@api.route('')
class PrizeList(Resource):
    @api.doc('获取所有奖项列表')
    @token_required
    def get(self):
        """获取所有奖项信息"""
        search = request.args
        p = 0
        n = 15
        if 'p' in search:
            p = int(search['p']) - 1
        if 'n' in search:
            n = int(search['n'])

        return get_prize_list(search, p, n)

app/main/util/dto.py

from flask_restplus import Namespace, fields

class PrizeDto:
    api = Namespace('prize', description='奖项相关')
	prize = api.model('prize', {
        'id': fields.Integer(required=False, description='编号'),
        'activity_id': fields.Integer(required=True, description='活动id'),
        ...
        })

文档访问地址就是自己的域名
如,本地127.0.0.1:5000/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值