【问题标题】:How to render HTML form from schema using formencode?如何使用formencode从模式呈现HTML表单?
【发布时间】:2010-07-12 05:42:15
【问题描述】:

我正在使用formencode 在我的 Pylons 应用程序中验证和提交表单。文档说它也可以用于生成表单,但没有任何示例。我什至发现了一个老话题,它说可以用

form = HTMLForm(form_template, FormSchema)
form.render()

但是对于最新版本的formencode,它不起作用。

那么,请大家帮忙,如何使用最简单的 Schema 生成 HTML?

class LoginForm(formencode.Schema):
    allow_extra_fields = True
    filter_extra_fields = True
    email = formencode.validators.String(not_empty=True)
    password = formencode.validators.String(not_empty=True)

【问题讨论】:

    标签: python html forms pylons formencode


    【解决方案1】:

    Formencode 库不会为表单生成 html。

    您所指的代码使用了不再存在的formencode.htmlform 模块,因为它是removed in 1.1 release,因为正如作者所说,it was dumb。 :)

    我想你可能把这种功能与这个lib的不同特性弄错了,即formencode.htmlfill module实现的提交不成功后填写表单值。

    【讨论】:

    • 感谢您的回答,我正在尝试在 Django 之后使用 Pylons,所以我一直认为它应该很简单 :)
    【解决方案2】:

    zifot 关于formencode 的说法是正确的。我只想补充一点,你应该看看 FormAlchemy 和 Sprox,这两个库是为从数据库模式生成表单而构建的。

    【讨论】:

    • 我使用的是 MongoKit,所以几乎所有的表单生成引擎都无济于事,因为模型描述不同。
    猜你喜欢
    • 2019-11-21
    • 2013-08-05
    • 2018-08-31
    • 1970-01-01
    • 2015-07-20
    • 2020-07-02
    • 1970-01-01
    • 2019-09-15
    • 2011-12-07
    相关资源
    最近更新 更多