I am trying to set the default value for a string field in flask wtforms. The following is my code and it doesn't work.
Code:
from flask.ext.wtf import Form
from wtforms import StringField
class TestForm(Form):
test = StringField('Test field')
@app.route('display/')
def display():
dynamicvalue = getdynamicvalue()
return render_template('test.html', form = form, defname = dynamicvalue)
test.html:
<div class="controls">
{{ form.test(size=80, readonly="readonly", value={{defname}} }}
</div>
How do I correct this?
The following is the error
{{form.test(size=80, readonly= "readonly", value={{defname}} }}
TemplateSyntaxError: expected token ':', got '}'
The form is the basic element that lets users interact with our web application. Flask alone doesn't do anything to help us handle forms, but the Flask-WTF extension lets us use the popular WTForms package in our Flask applications. This package makes defining forms and handling submissions easy.
you should use one pair of {{ }}
brackets in template
<div class="controls">
{{ form.test(size=80, readonly="readonly", value=defname) }}
</div>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With