Python WTForms是否使用字符串值预填充textarea字段?
我正在尝试使用值填充wtforms TextArea字段 我定义了一个类:Python WTForms是否使用字符串值预填充textarea字段?,python,html,class,flask,wtforms,Python,Html,Class,Flask,Wtforms,我正在尝试使用值填充wtforms TextArea字段 我定义了一个类: from flask_wtf import Form from wtforms import TextField, RadioField, TextAreaField class Contact(Form): email = TextField('Name : ') subject = TextField('Subject:') description = TextAreaField('Desc
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,这里我使用渲染模板:
from app.mod_contact.contact import Contact
//some code
contact = Contact()
return render_template('contact/contact.html')
在模板中,我这样做:
<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>
但没有结果。有人能帮我吗?提前感谢。我试图重复您的步骤,因此请发现以下代码已完成: test.py(开始代码) contact/contact.html
<html>
<body>
<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>
</body>
</html>
从给定的代码中可以看到,您应该将类Contact
的实例作为额外参数传递给render\u template
。我没有在你的代码中看到这一点,所以我猜你错过了。在这种情况下,您应该也能够看到呈现的TextAreaField,但您提到您可以看到它,但看不到默认值。在这个片段中,一切正常
另外,我假设,当用户键入内容时,您希望“请添加内容”消息自动消失。为此,应以以下方式更新contect.html
中的以下行:
{{ contact.description(class_="form-control", placeholder="please add content")}}
我在我的
Flask
实例上检查了这个,它在default
关键字下工作正常。我想你的问题可能是在重新定义字段描述@wanderlust中的某个地方,我尝试了重新定义,但仍然是同一个问题,你有什么其他想法吗?你能为类声明和初始化也放上完整的snipet吗?@wanderlust我编辑了我的问题:)我没有正确复制,因为我的表单中的参数contact=contact。我不知道为什么它还不能工作。无论如何,谢谢你的回答。试着用上面的代码,然后扩展到你的需要。我注意到一件奇怪的事情,如果我在textareafield上做一个inspect元素,它有一个字符串值,但这个值没有出现在页面中?
<html>
<body>
<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>
</body>
</html>
.
├── templates
│ └── contact
│ └── contact.html
└── test.py
{{ contact.description(class_="form-control", placeholder="please add content")}}