前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python装饰器实现参数校验

Python装饰器实现参数校验

作者头像
小贝壳
发布2020-11-19 14:08:49
1K0
发布2020-11-19 14:08:49
举报
文章被收录于专栏:贝塔博客贝塔博客

2020-11-17 发表在 编程语言 15

代码语言:javascript
复制
def requires(*params):
    def _deco(view_func):
        @wraps(view_func)
        def _handler(request, *args, **kw):
            # 校验参数
            for key in params:
                if key not in request.GET:
                    return JsonResponse(data={
                        'code': 'CHECK_ERROR',
                        'msg': '参数校验出错,"{}"是必选的!'.format(key)
                    })
            response = view_func(request, *args, **kw)

            return response

        return _handler

    return _deco
代码语言:javascript
复制
## 使用
代码语言:javascript
复制
    @requires('out_trade_no', 'total_amount', 'subject', 'platform')
def create(request):
    pass
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-11-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档