需求为 flask route url 中不包含请求参数,但需要 POST 特定的参数到方法中读值和处理。

解决方法为在视图中使用 request.args.get() 方法获取 POST 请求参数。

from flask import request

@app.route('/format/usbdisk/', methods=['POST'])
def format_usbdisk():
    disk_name = request.args.get('disk_name')
{% set dev = '/dev/sdb' %}
<form action="{{ url_for('storage.format_usbdisk', disk_name=dev) }}" method="POST">
    <button type="submit">Format</button>
</form>