Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

210
Vistas
Ir a otra página sin actualizar [Django]

Cómo lograr ir a otra página sin actualizar después de, por ejemplo, hacer clic en un enlace a otra URL. Más ejemplos, tengo una lista de libros que se muestran y cuando hago clic en uno de los libros, me redirigirá a la página del libro seleccionado. Este es el ejemplo del enlace del código. <a class="link" href="{% url 'books:view_book_detail' obj.book.name obj.pk %}">View book</a>

Sé sobre history.pushState() pero, ¿cómo usarlo realmente? ¿Se puede usar con URL de Django? ¿Hay algún otro método entonces indicado?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Usar django regular o javascript simple no es lo suficientemente eficiente para este propósito.

Los marcos de JavaScript modernos como React, Angular, Vue, etc. se utilizan normalmente para estos escenarios de casos.

Pero aún así, no es imposible hacer esto sin marcos JS. Uno de los enfoques que puede usar es usar AJAX.

Puede crear una base.html que será nuestra plantilla básica y luego dividir la aplicación en pequeños componentes como home.html , product-list.html , view-product.html . Que podemos incluir más de acuerdo con nuestros requisitos.

{% include 'view-product.html' with product=product_object %}
(algo como esto)

Realice una solicitud AJAX a /view_product/<id>/ que debería devolver un JsonResponse sobre qué componente mostrar. Y a través de JavaScript, podemos manejar la carga de ese componente específico.

Pero nuevamente, ESTA NO ES UNA BUENA PRÁCTICA , recomendaría usar marcos de JavaScript para aplicaciones de una sola página.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Hice esto usando muchas sentencias if en view.py
debe usar <button type="button"> en lugar de <a> , y verificar si la solicitud POST tiene ese nombre para responder con un contexto diferente, también debe usar declaraciones if en la plantilla para actualizar la interfaz de acuerdo con la respuesta
ES UNA MALA PRÁCTICA , es muy recomendable usar JS framework para tener una aplicación de una sola página

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda