动态烧瓶URL变量未传递给视图函数

时间:2019-05-28 17:38:48

标签: python html flask

我试图将动态变量从Flask中的路由传递到我的视图函数中。这似乎是一个标准功能。但是代码显示出一些奇怪的行为。

功能如下:

@bp.route('/<id>/update', methods=('GET', 'POST'))
@login_required
def update(id):
    return id

这是http://localhost:5000/1/update页上的输出:

id

如您所见,我希望可以打印“ 1”的值,但可以打印参数的名称...我不知道为什么会这样,并且非常感谢您的帮助。

谢谢!

(编辑:这是教程中的代码)

1 个答案:

答案 0 :(得分:0)

解决方案是来自其他模块的@login_required装饰器中的错误。如果有人有同样的错误,这就是我的代码...

def login_required(view):
@functools.wraps(view)
def wrapped_view(**kwargs):
    if g.user is None:
        return redirect(url_for('auth.login'))
    return view(*kwargs)
return wrapped_view

“ kwargs”缺少星星,因此python将其视为“ args”而不是“ kwargs” ...