1.4.3 Rendering HTML Form - dvrg/flask-web-development GitHub Wiki
Form yang sudah kamu buat pada app.py
bisa kamu gunakan di template kamu dengan cara:
<form method="POST">
{{ form.hidden_tag() }}
{{ form.name.label }}
{{ form.name() }}
{{ form.submit() }}
</form>
Kode di atas kamu tambahan class buat bootstrap dan tambahkan kode tersebut ke index.html
sehingga seperti di bawah ini:
# templates/index.html: menambahkan forms
...
<div class="container">
<a href="{{ url_for('user', name='David') }}" class="badge badge-pill badge-danger">User David</a>
<form method="POST">
{{ form.hidden_tag() }}
<div class="form-group row">
{{ form.name.label(class="col-sm-4 col-form-label") }}
<div class="col-sm-8">
{{ form.name(class="form-control") }}
</div>
</div>
{{ form.submit(class="btn btn-block btn-primary") }}
</form>
</div>
...
Karna di index.html
kita menggunakan form dengan method POST tentunya kita juga akan menambahkan method pada route index
dan juga paramater form untuk di panggil pada index.html
# app.py: menambahkan method dan parameter form
...
@app.route('/', methods=['GET', 'POST'])
def index():
form = UserForm()
return render_template('index.html', form=form)
...
Cobalah akses http://127.0.0.1:5000