gpt4 book ai didi

python - 在for语句中的django模板中按索引访问列表?

转载 作者:太空宇宙 更新时间:2023-11-04 05:02:57 26 4
gpt4 key购买 nike

我使用的是 django 1.11 和 python 3.5.2。

这是我在 views.py 中的代码的重要部分

ListaValoresLeidosXML = []

for sec in secciones:
print(sec.contenidoxml)

treexml = ET(fromstring(sec.contenidoxml))
Lista = []

for child in treexml.findall('caracteristica'):
nombre = child.find('nombre').text
Lista.append(nombre)
ListaValoresLeidosXML.append(Lista)

for lista in ListaValoresLeidosXML:
for valor in lista:
print(valor)
print('*****')

return render(request, 'editarCatElem.html', {
'elemento': ElemSeg,
'link': tutorial,
'subelementos': subelementos,
'secciones': secciones,
'listaXML' : ListaValoresLeidosXML
})

我正在读取数据库中的一个字符串字段,它包含一个 xml 格式的文本,使用 treexml 我可以获得所有属性。

最后我有一个列表列表,每个列表都有一个部分的值,这意味着如果我有 n 个部分,那么我将在列表中有 n 个列表.

我正在向我的模板发送一个名为 ListaXML 的列表。

在我的模板中,我试图对其进行迭代

{% for seccion in secciones %}

<div style="display: block" class="form-group">
<div style="display: block" class="form-group">
<label class="control-label col-md-2" for="nombreSeccion">Sección <span class="required">*</span></label>
<div class="col-md-2"><input type="text" value='{{ seccion.nombre }}' id="nombreSeccion" name="secciones[][nombreSeccion]" class="form-control col-md-2"></div>
<label class="control-label col-md-2" for="descSeccion">Descripción <span class="required">*</span></label>
<div class="col-md-2"><input type="text" value='{{ seccion.descripcion }}' id="descSeccion" name="secciones[][descripcionSeccion]" class="form-control col-md-2"></div>
</div>
<div class="col-md-offset-2 col-md-7">

<div class="form-horizontal form-label-left" style="background:lightblue; padding:8px;">

{% for caracteristica in listaXML %} # <-- Here is the problem!!

<div class="form-group">
<label class="control-label col-md-2" for="nombreCampo">Campo <span class="required">*</span></label>
<div class="col-md-4">
<input type="text" value='{{ caracteristica }}' name="secciones[][campos][][nombreCampo]" id="nombreCampo" class="form-control col-md-2">
</div>
</div>
{% endfor %}

<div class="form-group">
<button type="button" class="btn btn-primary col-sm-offset-0 col-sm-3" onclick="agregarCampo(event);"><i class="fa fa-plus"> </i> Agregar campo</button>
<button type="button" class="btn btn-danger col-sm-offset-1 col-sm-3" onclick="eliminarCampo(event);"><i class="fa fa-minus"> </i> Eliminar campo</button>
</div>
</div>
</div>
</div>

{% endfor %}

问题是我需要在每次重复时都这样做:

{% for caracteristica in listaXML.0 %}
{% for caracteristica in listaXML.1 %}
{% for caracteristica in listaXML.2 %}
{% for caracteristica in listaXML.3 %}
...

我需要增加最后的数字(列表的索引)。

我试过了

{% for caracteristica in listaXML.forloop.counter0 %}

{% for caracteristica in listaXML.{{forloop.counter0}} %}

但它不起作用。

知道代码是如何工作的吗?

最佳答案

看起来你只需要一个双 for 循环:

{% for lista in listaXML %}
{% for caracteristica in lista %}
<div class="form-group">
[...]
{% endfor %}
{% endfor %}

关于python - 在for语句中的django模板中按索引访问列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45262516/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com