Flask / WTForms再次动态表单字段

时间:2015-11-17 01:02:27

标签: python forms flask-wtforms

好的 - 我知道这已被发布但我仍然在应用一些解释时遇到一些麻烦。这在此处作为" Dynamic Form Composition"的一部分提及。 http://wtforms.simplecodes.com/docs/1.0.1/specific_problems.html

我想通过sqlalchemy从我的postgres数据库中存储的用户列表中动态创建表单:

for user in Users:
    user = SelectField('user', coerce=int)

它就是这样 - 只需创建一组下拉列表表单元素,每个元素都有用户名,这样我就可以在以后获得每个用户的数据(form.user.data)。在下拉列表中填充数据很容易 - 它是静态信息。

现在如果不使用WTForms - 这很简单,我可以在Jinja2中完成所有这些操作。但是,由于我用WTForms定义了我的表格FIRST,我遇到了麻烦。

这会回到我发布的链接。它显示:

def my_view():
    class F(MyBaseForm):
        pass

    F.username = TextField('username')
    for name in iterate_some_model_dynamically():
        setattr(F, name, TextField(name.title()))

    form = F(request.POST, ...)

假设我的表单是在forms.py中定义的,jinja2在网页中呈现的views.py和html中的视图无法显示给用户。

如果有人有一个更真实的例子适用它将非常感激。与此同时,我会继续乱砍。

0 个答案:

没有答案