Pairing up Django backend with frontend
I think it's bad practice to continuously ping the server like that. Especially considering that with something like a game, a lot of things can be changing very quickly. Your best bet is to keep track of what's going on in the front end, and then ping the server as needed to send or request information, query the database, etc (in other words, go with number 2, except you won't need to "compare" it with what's going on in the session, you'd simply be saving the finished game information to your database.)
All in all it depends on the complexity of the game and how you decide to structure it.
Here's my problem.
I have a small javascript game, which I am trying to pair with Django backend, to store highscores in sessions, maybe implement a highscore board, login, etc. in future. Just as a practice of interaction between front/backend.
So far I have the game running in javascript, and my plan is this: upon getting a score, it sends an ajax (jQuery) request to django, telling django to increment the score. Now here's few questions I have in mind:

Is it possible to render the highscore to template with Django/DTL? Score is set at 0, and each time a player scores, ajax-call to django backend will increment the score by one, and render it in template without refreshing the page. (Also compare it to highscore in sessions, and overwrite it if the new score is higher)
To my understanding, it requires a page refresh, which is not what I want.
Should I increment the score in frontend with JS, and after a game ends, send the score to django backend to compare it with the one in sessions etc etc.
Can javascript access values of django view? JSON maybe?

I'm still hesitating if I am heading to the right direction, so if you guys could just point me to the right direction. What would be the best way to implement this?