一、Flask模板相关装饰器
1. @app.template_global()
1、用法:可以在全局范围的模板中使用这个函数, 而不用通过参数传到模板中
@app.template_global() # 记得加括号
# 这个方法每调用一次就需要传一次, 将他做成一个全局的就用这么麻烦了
def jiafa(a, b):
return int(a) + int(b)
2、在模板中使用
<h2>{
{ jiafa(100, 30)}}</h2>
2. @app.template_filter()
1、用法
@app.template_filter()
def jianfa(a, b, c):
return a - b - c
2、在模板中这样使用
<h2>{
{ 100|jianfa(100, 300) }}</h2>
二、Flask类似django中间件装饰器
1. @app.before_request
@app.before_request
def before(*args,**kwargs):
print('请求之前')
'''
如果允许通过访问,可以return None
该装饰器装饰的函数如果有return其他内容则直接结束访问,
效果有点类似django的process_reqeust中间件方法。
比如通过这个装饰器写登陆验证,判断其是否有sess