要使用WTForms使用指定数量的列和行渲染我的textareafield,如何设置列数和行数?我按照这个问题的说明进行操作但不起作用:
如何使用wtforms指定
我尝试添加一个小部件,但它不起作用:
class AForm(Form): name = TextField('Name', [validators.Length(min=4)]) title = TextField('Title', [validators.Length(min=4)]) text = TextAreaField('Text', widget=TextArea(row=70, cols=11)) phonenumber = TextField('Phone number') phonenumberhide = BooleanField('Display phone number on site') price = TextField('Price') password = PasswordField('Password') email = TextField('Email', [ validators.Length(min=6, message=_('Little short for an email address?')), validators.Email(message=_('That\'s not a valid email address.')) ])
TypeError:object.new()不带参数
jwogrady.. 44
很老的问题,但由于WTF-Form文档不清楚,我发布了我的工作示例.OP,希望你还没有继续这个.:-)
形成
from flask_wtf import Form from wtforms.fields import StringField from wtforms.widgets import TextArea class PostForm(Form): title = StringField(u'title', validators=[DataRequired()]) body = StringField(u'Text', widget=TextArea())
模板
{% extends "base.html" %} {% block title %}Create Post{% endblock %} {% block content %}{% endblock %}Create/Edit Post
使用新版本的`wtforms`,你可以直接导入`TextAreaField`:`来自wtforms import TextAreaField` (7认同)
小智.. 26
无需为此问题更新模板.您可以在定义中设置行和列TextAreaField
.这是样本:
class AForm(Form): text = TextAreaField('Text', render_kw={"rows": 70, "cols": 11})
因为render_kw
,如果提供,将在渲染时向窗口小部件提供提供默认关键字的字典.
很老的问题,但由于WTF-Form文档不清楚,我发布了我的工作示例.OP,希望你还没有继续这个.:-)
形成
from flask_wtf import Form from wtforms.fields import StringField from wtforms.widgets import TextArea class PostForm(Form): title = StringField(u'title', validators=[DataRequired()]) body = StringField(u'Text', widget=TextArea())
模板
{% extends "base.html" %} {% block title %}Create Post{% endblock %} {% block content %}{% endblock %}Create/Edit Post
无需为此问题更新模板.您可以在定义中设置行和列TextAreaField
.这是样本:
class AForm(Form): text = TextAreaField('Text', render_kw={"rows": 70, "cols": 11})
因为render_kw
,如果提供,将在渲染时向窗口小部件提供提供默认关键字的字典.
TextArea
也可以在没有任何小部件的情况下实现字段:
forms.py
from wtforms import Form, TextField, TextAreaField class ContactForm(Form): name = TextField('Name') email = TextField('Email Address') body = TextAreaField('Message Body')
template.html
......