首页 > 其他 > 详细

Flask中的CBV

时间:2019-04-27 18:19:15      阅读:132      评论:0      收藏:0      [点我收藏+]

Flask中的CBV

第一种


class Index(views.MethodView):
    methods = [‘GET‘, ‘POST‘]   
    decorators = []

    def get(self):
        return ‘GET‘

    def post(self):
        return ‘POST‘

app.add_url_rule(‘/index‘, view_func=Index.as_view(name=‘index‘))  # name=‘index‘相当于设置endpoint

Index.as_view内部也会根据请求方式进行反射执行对应函数即执行dispatch_request

app.add_url_rule是进行装饰器路由映射内部执行的函数,本质上也是由add_url_rule添加的映射关系,decorators是添加的装饰器列表

第二种


class Index(views.View):
        methods = [‘GET‘, ‘POST‘]
        decorators = []

        def dispatch_request(self):
            print(‘dispatch_request‘)
            return ‘Index!‘

app.add_url_rule(‘/index‘, view_func=Index.as_view(name=‘index‘))

第二种继承的是views.View,这样就需要写dispatch_request函数,但也不必去进行分发请求,那么就会像FBV一样。

?

Flask中的CBV

原文:https://www.cnblogs.com/sfencs-hcy/p/10779532.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!