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

201
Views
Go to another page without refresh [Django]

How to achieve going to another page without refreshing after for example clicking a link to another URL. More examples, I have a list of books display and when I clicked on one of the book, it will redirect me to the selected book page. This is the example of the code link. <a class="link" href="{% url 'books:view_book_detail' obj.book.name obj.pk %}">View book</a>

I know about the history.pushState() but how to actually use it ? Can it be use with URL from Django. Are there any method else then stated ?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Using regular django or plain javascript is not efficient enough for this purpose.

Modern JavaScript frameworks like React, Angular, Vue etc are typically used for these case scenarios.

But still, it's not impossible though to do this without JS frameworks. One of the approaches that you can use is using AJAX.

You can create a base.html which will be our basic template, and then break the application into little components like home.html, product-list.html, view-product.html. Which we can further include according to our requirements.

{% include 'view-product.html' with product=product_object %}
(something like this)

Make an AJAX request to /view_product/<id>/ which should return a JsonResponse about which component to display. And through JavaScript, we can handle loading that specific component.

But again, THIS IS NOT A GOOD PRACTICE, I would recommend using JavaScript frameworks for Single Page Applications.

about 4 years ago · Juan Pablo Isaza Report

0

I did this using many if statements in view.py
you need to use <button type="button"> instead of <a> , and check if the POST request has that name to respond with different context, also you need to use if statements in template to update the frontend according to the response
IT IS A BAD PRACTICE, it is highly recommended to use JS framework to have a single page app

about 4 years ago · Juan Pablo Isaza 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!