为什么以下代码片段在“this produce error”注释的行中产生错误?我该怎么做才能纠正它?
@app.route('/', methods=['GET', 'POST'])
@app.route('/index', methods=['GET'])
@app.route('/lti/', methods=['GET', 'POST'])
@app.route('/<fase>', methods=['GET', 'POST']) #this produces error!
@lti(request='initial', error=error, app=app)
def index(lti=lti):
""" initial access page to the lti provider. This page provides
authorization for the user.
:param lti: the `lti` object from `pylti`
:return: index page for lti provider
"""
return render_template('index.html', lti=lti)
答案 0 :(得分:2)
<fase>
是一个可变占位符。它捕获url中该位置的字符串,并将其传递给view函数。它作为与占位符同名的关键字传递,因此视图函数需要接受具有相同名称的参数(或**kwargs
)。
@app.route('/<fase>', methods=['GET', 'POST'])
def index(fase=None, lti=lti):
pass