Flask 表单字段的动态默认值设置

Dynamic default value setting for a flask form field

我正在尝试为 flask wtforms 中的字符串字段设置默认值。以下是我的代码,它不起作用。

代码:

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>

我该如何纠正?

错误如下

{{form.test(size=80, readonly= "readonly", value={{defname}}  }}
TemplateSyntaxError: expected token ':', got '}'

你应该在模板中使用一对 {{ }} 括号

<div class="controls">
  {{ form.test(size=80, readonly="readonly", value=defname) }}
</div>