通过 Python Flask 从一个 HTML 输入获取多个值

2024-01-08

我有一个动态生成的行数,其中包含具有默认值(order_quantity)的表中的文本框。基本上,在一篇文章中,我希望 sql 中的项目表根据这些文本框的 ID 来更新它们的值。

{% for i in items %}
        <tr>
            <td>
                ...
            </td>
            <td>
                ...
            </td>
            <td>
                <div class="form-group">
                    <input type="number" id="amount" name="amount"  value="{{ i.order_quantity }}">
                </div>
            </td>
            <td>
             ...
             </td>
        </tr>
        {% endfor %}

传递 order_quantity 或商品 ID 没有问题,但显然两者都没有问题。

HTML:

<input type="number" id="amount" name="amount"  value="{{i.item_id}} {{ i.order_quantity }}">

Python:

amount = request.form.getlist('amount')
print amount
for i in amount:
    print i

总之,如何以简单的方式传递数量及其相对 ID,以便轻松地在服务器端提取每个文本框?


我认为你可以通过添加一个保存 item_id 的隐藏输入字段来实现你想要的

Example:

<td>
    <div class="form-group">
        <input type="number" id="amount" name="amount"  value="{{ i.order_quantity }}">
        <input type="hidden" name="item_id" value="{{ i.item_id }}"/>
    </div>
</td>

当您在 Flask 中收到输入时,您可以将 ID 与金额进行匹配,因为订单会被保留。

amounts = request.form.getlist('amount')
item_ids = request.form.getlist('item_id')
for item_id, idx in enumerate(item_id):
    amount = amounts[idx]
    # do something with item_id and amount
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 Python Flask 从一个 HTML 输入获取多个值 的相关文章

随机推荐