我想知道为什么当我转到“ /al6759@school.edu/info”路线时,控制台会打印
()
al6759@school.edu
即使向user_info发送了值,为什么args为空?我试图提供解决问题所需的最少代码。预先感谢。
from flask import Flask, render_template, request, redirect, session
from functools import wraps
def security(f):
@wraps(f)
def wrap(*args, **kwargs):
print(args)
return f(*args, **kwargs)
return wrap
@app.route('/<email>/info', methods=['POST', 'GET'])
@security
def user_info(email):
print(email)
return render_template('user_info.html')
答案 0 :(得分:1)
我认为您想在装饰器中打印kwargs['email']
。
因此,例如:
def security(f):
@wraps(f)
def wrap(*args, **kwargs):
print('email from kwargs: ', kwargs['email'])
print('kwargs: ', kwargs)
return f(*args, **kwargs)
return wrap
将给出输出:
email from kwargs: al6759@school.edu
kwargs: {'email': 'al6759@school.edu'}
al6759@school.edu