使用Flask动态HTML内容和Python变量

使用Flask动态HTML内容和Python变量,python,html,flask,Python,Html,Flask,在用户端,假设我让人们通过表格选择学校记录,并显示在下表中 例如,他们从姓名列表中选择自己的姓名,这会从数据库中提取记录 根据他们的年级,他们可能有1年、2年、3年或4年的记录,因此提取的数据看起来总是不同的 提交表单后,他们的记录存储在一个包含所有记录的变量中,然后将每个记录细分为子类型,例如,英语系的所有记录。这些子类型存储在其他列表中——因此有一个所有英文记录的列表。让我们称之为变量english_records。我希望使用这些子类型变量能够只显示用户希望看到的数据,并显示该特定列表中的所

在用户端,假设我让人们通过表格选择学校记录,并显示在下表中

例如,他们从姓名列表中选择自己的姓名,这会从数据库中提取记录

根据他们的年级,他们可能有1年、2年、3年或4年的记录,因此提取的数据看起来总是不同的

提交表单后,他们的记录存储在一个包含所有记录的变量中,然后将每个记录细分为子类型,例如,英语系的所有记录。这些子类型存储在其他列表中——因此有一个所有英文记录的列表。让我们称之为变量english_records。我希望使用这些子类型变量能够只显示用户希望看到的数据,并显示该特定列表中的所有数据

因此,使用Flask的render_template函数,我试图将这些记录发送到一个html模板,该模板将为每个记录创建一个表单元格

我一直在尝试的(到目前为止还没有成功)是:

Python:

i = 0
def index():
    for e in english_records:
        english_records = [
            { 
                'english': english_records[i]
            }
        ]
        i = i + 1
    return render_template("index.html",
        english_records = english_records)
...table above...
{% for record in english_records %}
<td>
  {{record.english}}
</td>
{% endfor %}
...table continues...
和HTML格式:

i = 0
def index():
    for e in english_records:
        english_records = [
            { 
                'english': english_records[i]
            }
        ]
        i = i + 1
    return render_template("index.html",
        english_records = english_records)
...table above...
{% for record in english_records %}
<td>
  {{record.english}}
</td>
{% endfor %}
...table continues...
…上表。。。
{英语记录的百分比_记录的百分比}
{{record.english}
{%endfor%}
…表格继续。。。
到目前为止,我已经为每条记录创建了表单元格,但是这些记录没有被传递。有人知道怎么做吗

 for e in english_records:
        english_records = [
            { 
                'english': english_records[i]
            }
        ]
        i = i + 1
这里的循环正在创建列表,但这些列表的成员没有“english”键, 因此,在模板中,循环被执行,但是
{{record.english}}
没有值,因此它被忽略。
您将得到的只是没有任何数据的表行。

是否有预处理数据的原因?英语录音是什么样子的?如果我的直觉是正确的,那么实际上根本不需要
for
循环

还有一个问题是,您在for循环中使用
english\u records
覆盖初始
english\u records
变量,因此赋值虽然在语法上是合法的,但在逻辑上是无意义的


另一个问题是,根据第一个
english\u记录的实际类型,您不需要使用计数器:如果
english\u记录
是一个
列表
,那么它将包含您要查找的值。如果
english\u records
是一个
dict
,那么在english\u records.iteritems()

中为key,val枚举它可能看起来像
?第四行不是给了那把钥匙吗?