1

我第一次使用 Flask 引导程序并且它有效

{% import "bootstrap/wtf.html" as wtf %}
<form method="POST" action="{{url_for('edit_ad', id=ad.id)}}" enctype="multipart/form-data">
    {{ form.hidden_tag() }}
    {{ wtf.form_field(form.title) }}
    {{ wtf.form_field(form.body) }}
    {{ wtf.form_field(form.img_url) }}
    {{ wtf.form_field(form.price) }}
    <div>
        <p>
            <button class="" type="submit" value="Edit">Edit</button>
        </p>
    </div>
</form>

但我想将其更改为 Bootstrap Flask 并使用 render_form。我在使用 url_for 时遇到问题

{% from 'bootstrap/form.html' import render_form %}
{{ render_form(form, action="{{url_for('edit_ad', id=ad.id)}}", method="POST", button_map={'edit_button': 'primary'}) }}

Here is my view:
@app.route('/edit_ad/<string:id>', methods=['GET', 'POST'])
@login_required
def edit_ad(id):

# more code
    return render_template('edit_ad.html', form=form, ad=ad)

我应该如何传递id?谢谢

4

1 回答 1

0

你可以像这样传递变量,

{% from 'bootstrap/form.html' import render_form %}
{{ render_form(form, action="/edit_ad/{{ ad.id }}", method="POST", button_map={'edit_button': 'primary'}) }}
于 2021-06-24T18:07:22.870 回答