我正在设计一个包含多个重复条目的页面。例如:
<input type="text" name="fname1" /><input type="text" name="lname1" />
<input type="text" name="fname2" /><input type="text" name="lname2" />
<input type="text" name="fname3" /><input type="text" name="lname3" />
.
.
.
<input type="text" name="fnameN-1" /><input type="text" name="lnameN-1" />
<input type="text" name="fnameN" /><input type="text" name="lnameN" />
我正在使用 Flask+Jinja2,所以很明显我正在生成那个 html:
{% for fname, lname in names %}
<input type="text" name="fname{{ loop.index }}" value="{{ fname }}" /><input type="text" name="lname{{ loop.index }}" value="{{ lname }}" />
{% endfor %}
但是现在我想在有人更新它们之后将这些值从这个表单中提取出来。
做这个的最好方式是什么?我最初的想法是做这样的事情:
for x in range(1, N):
fname = request.form.get("fname%d" % x)
lname = request.form.get("lname%d" % x)
但出于某种原因,这对我来说感觉很笨拙。我希望有类似的东西:
for fname, lname in request.form.get_all('fname%d', 'lname%d'):
# Stuff here
当然,我在搜索中没有找到任何东西,否则我也会在这里发布答案。有没有“最好的方法”来做到这一点,还是我应该自己动手?