wtforms用字符串值重新填充textarea字段?

2024-04-18 20:05:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用一个值来填充wtforms textareafield。在

我定义了一个类:

from flask_wtf import Form
from wtforms import TextField, RadioField, TextAreaField

class Contact(Form):
    email = TextField('Name : ')
    subject = TextField('Subject:')
    description = TextAreaField('Description:', default="please add content")

我使用的是python,这里是渲染模板:

^{pr2}$

在模板中我这样做了:

<div class="form-group">
      {{ contact.description.label(class_="control-label col-xs-3") }}
       <div class="col-xs-6">
           {{ contact.description(class_="form-control")}}  
       </div>
</div> 

但默认文本不显示,它是空白的。在

我还试图在模板上增加价值:

{{ contact.description(class_="form-control" ,value="please type content")}}

但没有结果。有人能帮帮我吗?提前谢谢。在


Tags: fromimportdivform模板contactdescriptioncontent
1条回答
网友
1楼 · 发布于 2024-04-18 20:05:47

我尝试重复您的步骤,因此请发现以下代码已完成:

测试.py(起始代码)

from wtforms import TextField, RadioField, TextAreaField

class Contact(Form):
    email = TextField('Name : ')
    subject = TextField('Subject:')
    description = TextAreaField('Description:', default="please add content")

app = Flask(__name__)
app.secret_key = 'A0Zr98j/3yX R~XHH!jmN]LWX/,?RT'

@app.route('/test')
def test():
    contact = Contact()
    return render_template('contact/contact.html', contact=contact)

if __name__ == '__main__':
    app.run(debug=True)

联系/联系人.html

^{pr2}$

项目树如下:

.
├── templates
│   └── contact
│       └── contact.html
└── test.py

从给定的代码中可以看到,应该将类Contact的实例作为额外参数传递给render_template。我在你的代码中没有看到这个,所以我想你错过了。在这种情况下,您应该也可以看到呈现的TextAreaField,但您提到您看到了它,但没有看到默认值。在这个片段中,一切正常。在

另外,我想,你会希望“请添加内容”的消息在用户输入内容时自动消失。为此,您应该以这样的方式更新contect.html中的以下行:

{{ contact.description(class_="form-control", placeholder="please add content")}}  

相关问题 更多 >