我已经从类创建了sqlalchemy类和wtform Form。
from wtforms.ext.sqlalchemy.orm import model_form
class ClientGroup(Base, BaseModel):
__tablename__ = 'client_groups'
id = Column(Integer, primary_key=True)
name = Column(String(255))
sale = Column(Integer)
def __unicode__(self):
return self.name
ClientGroupForm = model_form(ClientGroup, Form, field_args={
'name': {'validators' : [validators.Required(), validators.Length(min=5)]},
})
在应用程序中的我有以下代码:
form = ClientGroupForm(request.form)
if form.validate():
.. save data
当我向app发送新数据时,它会返回验证错误。 ID必须是整数字段。 但是新数据没有任何内容。
请给我建议如何在sqlalchemy中使用wtforms?
答案 0 :(得分:2)
通过将以下内容添加到field_args
:
'id': {'validators' : [validators.Optional()],
但是,我认为您应该完全从表单中排除id
字段:
ClientGroupForm = model_form(ClientGroup, Form, field_args={
'name': {'validators' : [validators.Required(), validators.Length(min=5)]},
exclude=['id'],
})