Kør gennem afkrydsningsfelterne i Kolben

Jeg har en Jinja2 skabelon, som ser ud som dette:

<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>

Og jeg har en funktion, der bør slette de sider, i henhold til hvilke bokse blev kontrolleret, når ‘Delete-knappen er klikket på:

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

Hvad jeg sidder med, er, hvordan kan jeg iterere gennem alle afkrydsningsfelterne, og form den page_ids liste af kontrollerede dem.

OriginalForfatteren Andrii Yurchuk | 2011-11-03

1 svar

  1. 32

    Kolbe er request objekt (tja, faktisk er den klasse, der er tilbage af LocalProxy tilfælde, der er request) er en underklasse af werkzeug er MultiDict data struktur, som omfatter en getlist metode.

    page_ids = request.form.getlist("do_delete")
    Det virker, tak!
    Fremragende, tak.
    Virkelig god. Det fungerede ret godt for mig. Tak!

    OriginalForfatteren Sean Vieira

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *