2013-03-26 11 views
5

Mam pliki javascript w moim folderze static. Django znajduje i ładuje je doskonale, więc nie sądzę, że jest coś złego w mojej konfiguracji opcji static. Jednak czasami, gdy dokonuję zmiany w pliku .js i zapisuję go, szablon Django, który go używa, NIE odzwierciedla tych zmian - sprawdzanie javascript za pomocą przeglądarki ujawnia javascript PRZED ostatnim zapisaniem. Restart serwera nie działa, ale ponowne uruchomienie komputera czasami rozwiązało problem. Nie mam żadnego kodu, który jawnie zajmuje się buforowaniem. Czy ktokolwiek kiedykolwiek doświadczył czegoś takiego?Django nie odzwierciedla aktualizacji do plików JavaScript?

+1

Doświadczyłem, że jeden, po prostu odświeżyć to wiele razy tak, że moje nowe aktualizacje dla js dokona aktualizacji w systemie. – catherine

Odpowiedz

10

wierzę przeglądarka jest buforowanie js

można zasilać odśwież przeglądarkę lub wyczyścić pamięć podręczną przeglądarki?

na chrom sterowania + F5 lub Shift + F5

i wierzą na firefox jest kontrola + Shift + R

3

Od edytowania plików JavaScript i obserwując zmiany w przeglądarce zakładam aktywnie rozwijasz swoją aplikację Django i prawdopodobnie używasz serwera uruchomieniowego Django. Jest lepsze rozwiązanie niż czyszczenie pamięci podręcznej przeglądarki i odświeżanie. Jeśli uruchomisz narzędzie obserwujące, które obsługuje protokół Livereload, Twoja przeglądarka automatycznie odświeży się po każdej zmianie statycznego pliku.

Pakiet pytonów django-livereload-server zapewnia wspaniałe rozwiązanie. Zainstalować go:

$ pip install django-livereload-server

Dodaj 'livereload.middleware.LiveReloadScript' do MIDDLEWARE_CLASSES w settings.py.

Następnie uruchom

$ ./manage.py livereload

przed rozpoczęciem runserver.

Więcej dokumentów można znaleźć na the django-livereload-server github site

+0

Wygląda na to, że nie działa. – jasonleonhard

Powiązane problemy