Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用烧瓶验证多个单选按钮_Python_Html_Flask - Fatal编程技术网

Python 使用烧瓶验证多个单选按钮

Python 使用烧瓶验证多个单选按钮,python,html,flask,Python,Html,Flask,我有一个python脚本,用于将字典列表发送到网页 from flask import Flask, render_template from flask.ext.wtf import Form from wtforms.fields import RadioField app = Flask(__name__) app.config.from_object(__name__) class SimpleForm(Form): relevance = RadioField('Label

我有一个python脚本,用于将字典列表发送到网页

from flask import Flask, render_template
from flask.ext.wtf import Form
from wtforms.fields import RadioField

app = Flask(__name__)
app.config.from_object(__name__)

class SimpleForm(Form):
    relevance = RadioField('Label', choices=[('0','A'), ('1','B'), ('2','C')])

@app.route('/',methods=['post','get'])
def hello_world():
    form = SimpleForm()
    if form.validate_on_submit():
        print form.relevance
    else:
        print form.errors

    stuff = {
            "text": "blah",
            "other": "random",
            "title": "21",
            "radios": form
        }
    stuff2 = {
            "text": "blah2",
            "other": "random2",
            "title": "22",
            "radios": form
        }
    all_stuff = {
        "mall": [stuff, stuff2]
    }
    return render_template('example.html', **all_stuff)

if __name__ == '__main__':
    app.run(debug=True)
这是
example.html

<form method="post">
    {% for a in mall %}
        {{ a.other }}<br>
        {{ a.title }}<br>
        {{ a.text }}<br>
        {{ a.radios.relevance }}<br>
    {% endfor %}
    <input type="submit">
</form>

{%对于购物中心%}
{{a.other}}
{{a.title}}
{{a.text}}
{{a.radios.relevance}}
{%endfor%}
这将打印两个词典,但单选按钮的作用类似于一组单选按钮。这里我展示了2个字典,但我将有大约50个字典,我必须提交它们的单选按钮值。我该怎么做?每当我提交时,我都会得到
{'csrf_token':['csrf token missing']}


另一件事是,为什么这种呈现单选按钮的方式会导致单选按钮的垂直列表?有什么方法可以得到按钮的水平表示吗?

'radio'字段允许您只检查一个按钮


要选择多个选项,必须使用“复选框”字段。

是否因为所有词典都指向表单的一个实例?查看呈现的html可能会有所帮助。