Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

782
Views
Pasar la variable Django a un atributo de acordeón en HTML

Soy novato en Django y me disculpo de antemano por una pregunta tan básica para la mayoría de ustedes, pero busqué preguntas similares por todas partes y no encontré una solución viable.

Estoy tratando de crear un acordeón Bootstrap para cada elemento de un bucle for de Django. Entonces, se muestra una lista de elementos, y cuando hace clic en un elemento, la descripción del mismo se colapsará para mostrarse. El segmento actualmente se ve así usando esta plantilla :

 <head> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script> </head> <body> {% for item in items %} <div class="accordion" id="accordionExample"> <div class="accordion-item"> <h2 class="accordion-header" id="headingOne"> <button class="accordion-button" type="button" data-bs-toggle="collapse" data-parent="#accordion" data-bs-target="#collapseOne" aria-expanded="false" aria-controls="collapseOne"> {{ item }} </button> </h2> <div id="collapseOne" class="accordion-collapse collapse" aria-labelledby="headingOne" data-bs-parent="#accordionExample"> <div class="accordion-body"> {{ item.description }} </div> </div> </div> </div> </body>

Ahora, esto está dando el mismo valor ( collapseOne ) a data-bs-toggle , aria-controls e id de la clase de accordion-collapse (elemento colapsado) para cada elemento del bucle for, lo que hace que todos los elementos del acordeón se colapsen cuando uno de ellos se hace clic, aunque solo quiero que se colapse el que se hizo clic.

Entonces traté de pasar la variable Django como tal:

  1. {{ item }} en lugar de collapseOne
  2. {{ forloop.counter }} en lugar de collapseOne

El acordeón todavía se muestra, pero no se contrae cuando se hace clic.

¿Hay alguna forma de pasar una variable de Django a los atributos del elemento de acordeón? ¿O cualquier otro trabajo alrededor?

Agradecería tu consejo.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Debería poder usar el {{ forloop.counter }} - solo asegúrese de actualizar el valor donde lo necesite:

 {% for item in items %} <div class="accordion" id="accordionExample"> <div class="accordion-item"> <h2 class="accordion-header" id="heading-{{ forloop.counter }}"> <button class="accordion-button" type="button" data-bs-toggle="collapse" data-parent="#accordion" data-bs-target="#collapse-{{ forloop.counter }}" aria-expanded="false" aria-controls="collapse-{{ forloop.counter }}"> {{ item }} </button> </h2> <div id="collapse-{{ forloop.counter }}" class="accordion-collapse collapse" aria-labelledby="heading-{{ forloop.counter }}" data-bs-parent="#accordionExample"> <div class="accordion-body"> {{ item.description }} </div> </div> </div> </div> {% endfor %}
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!