我正在尝试获取从url_for()
函数传递的参数。但是它一直向我返回一个空的ImmutableMultiDict。下面是我的代码。
hosts.html
<p>
<a href="{{ url_for('svc_instance_deploy',
service_id=service_id,
host_id=host_id) }}">
<span class="label label-success">Install Software</span>
</a>
</p>
view.py
@app.route('/deploy/<service_id>', methods=['GET', 'POST'])
@app.route('/deploy/<service_id>/<host_id>/', methods=['GET', 'POST'])
@login_required
def svc_instance_deploy(service_id, host_id=0):
print(request.args)
当单击hosts.html
上的链接时,浏览器和服务器端均不会出错。除了它向我输出一个空的ImmutableMultiDict。
为什么我无法获得url_for()
函数传递的参数?我该怎么办?预先感谢。
答案 0 :(得分:0)
我解决了这个问题。
结果是我使用了错误的property
对象Request
。在视图函数中获取参数时,应使用request.view_args
而不是request.args
。