python-flask 如何在表单中生成布尔列表

python-flask how to generate a boolean list in a form

好的,我了解了表单、视图的基础知识,HTML 用于生成表单的模板:

class General_Form(Form):
    yes_no = BooleanField('well?', default = False)
    def __init__(self, *args, **kwargs):
        Form.__init__(self, *args, **kwargs)

    def validate(self):
        if not Form.validate(self):
            return False
    return True

如果我将 General_Form 作为表单对象传递到我的视图,我将可以在 html 中访问它:{{form.yes_no}} 我的复选标记。

我现在要做的是将一个字符串列表带到 init 并使用该列表生成一个布尔值列表,其标签是我传递的列表中的字符串值。然后将该表单对象传递到我的视图和 html 所以当我查看页面时,我看到一个布尔对象列表及其标签和复选框,基本上是一个检查列表。我知道如何在纯 html 中执行此操作,但我在使用 python 中的此表单 class 破译它时遇到了一些问题。谢谢

好吧,我把它拼凑在一起,我从我的 form.py 中的一个非常基本的表格开始:

class General_Form(Form):
    def validate(self):
        if not Form.validate(self):
            return False
        return True

我的 view.py 路由方法将那个表单带过来,并且

if request.method == "POST":
    if request.form['submit'] == "Find":
        if form.validate_on_submit():
            ----->> do stuff

我的元素有:

<input type="submit" name="submit" value="Find"/>

显然,只有当您要用它做很多复杂的事情时,才需要尝试使用 Form class 下的 class 对象构造函数,例如检查恶意内容的字符串,如果您只是构建一个带有提交输入的复选框列表,那么所有其他构造函数不仅不是必需的,而且似乎没有连贯的方法来构建它们。