关于flask向html传参的问题
在做项目时遇到需要把数据库的数组参数(二维)传到HTML中,并在HTML中索引。看似简单但却不容易解决,原因是当数组被传递到HTML后无法直接使用下标索引,因而需要在传参之前进行相应的处理。经过查资料、讨论和思考后,给出以下解决方案:
1.首先在.py文件中编写函数parse进行数组处理
2.处理后的数组再传到HTML,用两个for循环进行遍历
def parse(data):
ans = []
i = 0
while i < len(data):
curr = []
for j in range(7):
if i >= len(data):
break
curr.append(data[i])
i += 1
ans.append(curr)
return ans
@app.route('/')
def index():
result = read_data() # 读数据库并传到变量result内
result = parse(result)
return render_template('firstproj.html', meal_data=result)
{% for meals in meal_data %}
{% for row in meals %}
<div class="meal">
<img src= {{row[1]}} alt="error" />
<div class="meal-info">
<h3 style="color:white">{{row[0]}}</h3>
</div>
</div>
{% endfor %}
{% endfor %}