Python 如何在flask中定义选择字段

Python 如何在flask中定义选择字段,python,flask,sqlalchemy,flask-sqlalchemy,Python,Flask,Sqlalchemy,Flask Sqlalchemy,我想在python中定义一个选择字段,即限制为一组值的字段。我怎样才能在flask框架中做到这一点。我在以下来源的选择字段中找不到任何内容: 我将sqlalchemy用于ORM。我假设您指的是表单中具有有限选项集的字段;要做到这一点,您可以使用WTForms和its,它允许您从模型创建表单 完成此操作后,可以根据模型条件限制字段的选择 由于您尚未发布您的模型,下面是一个示例,让您了解该模型的工作原理: def enabled_categories(): return Category

我想在python中定义一个选择字段,即限制为一组值的字段。我怎样才能在flask框架中做到这一点。我在以下来源的选择字段中找不到任何内容:


我将sqlalchemy用于ORM。

我假设您指的是表单中具有有限选项集的字段;要做到这一点,您可以使用
WTForms
和its,它允许您从模型创建表单

完成此操作后,可以根据模型条件限制字段的选择

由于您尚未发布您的模型,下面是一个示例,让您了解该模型的工作原理:

def enabled_categories():
    return Category.query.filter_by(enabled=True)

class BlogPostEdit(Form):
    title    = TextField()
    blog     = QuerySelectField(get_label='title')
    category = QuerySelectField(query_factory=enabled_categories,
                                allow_blank=True)

def edit_blog_post(request, id):
    post = Post.query.get(id)
    form = ArticleEdit(obj=post)
    # Since we didn't provide a query_factory for the 'blog' field, we need
    # to set a dynamic one in the view.
    form.blog.query = Blog.query.filter(Blog.author == request.user) \
                                .order_by(Blog.name)