遍历 Flask 中的复选框

发布于 2024-12-13 18:16:30 字数 897 浏览 2 评论 0原文

我有一个 Jinja2 模板,如下所示:

<form action="" method=post>
    <table>
        <tr>
            <th></th>
            <th>ID</th>
            <th>Title</th>
        </tr>
        {% for page in pages %}
            <tr>
                <td><input type=checkbox name=do_delete value="{{ page['id'] }}"></td>
                <td>{{ page['id'] }}</td>
                <td><a href="{{ page['id'] }}">{{ page['title'] }}</a></td>
            </tr>
        {% endfor %}
    </table>
    With selected:
    <input type=submit value=Delete>
</form>

我有一个函数,当单击“删除”按钮时,应该根据选中的复选框删除页面:

db.session.query(Page).filter(Page.id.in_(page_ids)).delete()

我所困惑的是如何迭代所有页面复选框并形成已选中的 page_ids 列表。

I have a Jinja2 template that looks like this:

<form action="" method=post>
    <table>
        <tr>
            <th></th>
            <th>ID</th>
            <th>Title</th>
        </tr>
        {% for page in pages %}
            <tr>
                <td><input type=checkbox name=do_delete value="{{ page['id'] }}"></td>
                <td>{{ page['id'] }}</td>
                <td><a href="{{ page['id'] }}">{{ page['title'] }}</a></td>
            </tr>
        {% endfor %}
    </table>
    With selected:
    <input type=submit value=Delete>
</form>

And I have a function, that should delete the pages according to which checkboxes were checked, when the 'Delete' button is clicked:

db.session.query(Page).filter(Page.id.in_(page_ids)).delete()

What I'm stuck with is how do I iterate through all the checkboxes and form the page_ids list of checked ones.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

追星践月 2024-12-20 18:16:30

Flask 的 request 对象(实际上是 LocalProxy 实例返回的类,即 request)是 werkzeug 的 MultiDict 数据结构 - 其中包括 getlist 方法。

page_ids = request.form.getlist("do_delete")

Flask's request object (well, actually the class that is returned by the LocalProxy instance that is request) is a subclass of werkzeug's MultiDict data structure - which includes a getlist method.

page_ids = request.form.getlist("do_delete")
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文