flask中的FBV
点击查看代码
from flask import Flask, views, request
app = Flask(__name__)
@app.route('/index', methods=['GET', 'POST'])
def index():
if request.method == 'GET'
return 'GET'
return 'POST'
if __name__ == '__main__':
app.run()
flask中的CBV
点击查看代码
from flask import Flask, views
app = Flask(__name__)
def test(func):
def inner(*args, **kwargs):
print('before')
result = func(*args, **kwargs)
print('after')
return result
return inner
class index(views.MethodView): # 内部是一个反射的机制
# methods = ['GET', 'POST']
decorators = [test] # 在CBV里面使用装饰器
def get(self):
print('get')
return 'get'
def post(self):
return 'post'
app.add_url_rule('/index', view_func=index.as_view('index'))
if __name__ == '__main__':
app.run()