Django - Changes to HTML Templates Not Working

August 27, 2017 277 views
Django Ubuntu 16.04

So I am SURE that I am missing a basic step here but it's driving me nuts.

I followed this tutorial to setup my server:
https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04

Everything is working as intended, woohoo! Except... now I am making changes to my templates, meaning primarily the HTML parts. Just editing text here and there that I want to update.

Unfortunately, after I do so, and I upload the files via SFTP (FileZilla) to the app directory's template folder, it does not reflect the changes on the site. I've restarted nginx, confirmed the correct files are going to the correct folder (I think?), tried collectstatic again (which does not update anything, though I am only changing the html so I wouldn't expect it to), and cleared my local cache (tried incognito, etc.).

Am I just missing something regarding how to make those changes reflect on the actual website? I go to my domain (which works to connect to my nginx server) but it just shows the original base.html page that I first uploaded. I can't get any changes to take place when I visit the site.

Thoughts??

1 comment
5 Answers

I don't have any caching enabled in Django that I know of:

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,

You need to change your permissions after you've uploaded a file over SFTP.

That's a great bit of advice to try, but I'm not sure which permissions you're talking about nor which command to do that.

Do I have to do it after every upload?

  • Yes if you're using SFTP.
    You can either use the permission manager in filezilla or ssh in and change file ownership.

What's the better alternative? Push/pull with Git?

update:

This is bizarre! I changed the permissions on the file, and now everytime you refresh the site, it alternates between the good one, and the old one. Like it's fighting with another file to be displayed??

Just refresh your Gunicorn server like so:

sudo service gunicorn restart

Then refresh your page on the browser and you will see the changes.

Have another answer? Share your knowledge.