9 flask之CBV
1 CBV的写法
# -*- coding: utf-8 -*- # @Time : 2021/12/5 17:08 # @Author : dzg from flask import Flask, views app = Flask(__name__) class IndexView(views.MethodView): methods = ['GET', 'POST'] def get(self): return 'Index.GET' def post(self): return 'Index.POST' app.add_url_rule('/index', view_func=IndexView.as_view(name='index')) # name=endpoint if __name__ == '__main__': app.run()
2 CBV添加装饰器:decorators
decorators = [装饰器1,装饰器2,。。。]
# -*- coding: utf-8 -*- # @Time : 2021/12/5 17:08 # @Author : dzg from flask import Flask, views app = Flask(__name__) def auth1(func): def inner(*args, **kwargs): print('before1') result = func(*args, **kwargs) print('after1') return result return inner def auth2(func): def inner(*args, **kwargs): print('before2') result = func(*args, **kwargs) print('after2') return result return inner class IndexView(views.MethodView): methods = ['GET', 'POST'] # 添加装饰器 decorators = [auth1,auth2] def get(self): return 'Index.GET' def post(self): return 'Index.POST' app.add_url_rule('/index', view_func=IndexView.as_view(name='index')) # name=endpoint if __name__ == '__main__': app.run()