Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

160
Visualizações
Imprima los datos del modelo de Django como matriz de JavaScript

He impreso un bucle for como se muestra a continuación en mi plantilla HTML:

 <td> {% for athlete in booking.athlete.all %} {{athletes.id}} {% endfor %} </td>

La salida en HTML es la siguiente.

 <td> 1 2 3 </td>

¿Es posible hacer que la salida aparezca como [ "1", "2", "3" ], para que luego podamos usar esto como una matriz u objeto JS?

Probé algunas cosas de la Plantilla Django pero no elimina el espacio en blanco adicional.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La forma más fácil es probablemente usar una etiqueta de plantilla personalizada para obtener la lista de athlete.ids , y luego el filtro json_script para representar esas identificaciones como json.

Supongamos que el nombre de su aplicación es myapp . Si aún no tiene ningún filtro personalizado, cree el directorio myapp/templatetags/ y agregue un archivo __init__.py vacío. Luego, en el archivo myapp/templatetags/myapp_filters.py agregue:

 from django import template register = template.Library() @register.filter def qs_to_id_list(qs): return list(qs.values_list('id', flat=True))

En su ejemplo de plantilla, haría:

 {% load myapp_filters %} {% for booking in bookings %} <tr> <td>{{booking.id}}</td> <td>{{booking.program_type}}</td> <td>{{booking.booking_time}}</td> {# set a unique script id for easier access in javascript #} {% with script_id='athletes-data-'|add:booking.id %} {{booking.athlete.all|qs_to_id_list|json_script:script_id}} {% endwith %} </tr> {% endfor %}

El filtro json_script generará un bloque como este (en cada fila de la tabla):

 <script id="athletes-data-5" type="application/json">[1, 2, 3]</script>

al que se puede acceder en su javascript del lado del cliente.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda