2013-03-26 21 views
5

Tôi có tệp javascript trong thư mục static của mình. Django tìm thấy và tải chúng hoàn toàn tốt, vì vậy tôi không nghĩ rằng có bất cứ điều gì sai với cấu hình của tôi về các tùy chọn static. Tuy nhiên, đôi khi khi tôi thực hiện thay đổi đối với tệp .js và lưu nó, mẫu Django sử dụng nó KHÔNG phản ánh những thay đổi đó - kiểm tra javascript bằng trình duyệt cho biết javascript TRƯỚC lần lưu cuối cùng. Khởi động lại máy chủ không có gì, mặc dù khởi động lại máy tính của tôi đôi khi đã giải quyết được vấn đề. Tôi không có bất kỳ mã giao dịch rõ ràng với bộ nhớ đệm. Có ai từng trải qua bất cứ điều gì như thế này không?Django không phản ánh cập nhật cho các tập tin Javascript?

+1

tôi có kinh nghiệm rằng một, tôi chỉ làm mới nó nhiều lần để cập nhật mới của tôi cho js sẽ làm cho một bản cập nhật trên hệ thống. – catherine

Trả lời

10

Tôi tin rằng trình duyệt của bạn bộ nhớ đệm js của bạn

bạn có thể cung cấp năng lượng làm mới trình duyệt của bạn, hoặc bộ nhớ cache của trình duyệt rõ ràng?

về kiểm soát chrome + f5 hoặc shift + f5

i tin trên firefox nó là kiểm soát + shift + r

3

Vì bạn đang chỉnh sửa các file Javascript và xem cho những thay đổi trong trình duyệt tôi giả bạn đang tích cực phát triển ứng dụng Django của bạn và có thể sử dụng máy chủ phát triển của Django. Có một giải pháp tốt hơn là xóa bộ nhớ cache của trình duyệt và làm mới. Nếu bạn chạy tiện ích watcher hỗ trợ giao thức tải gan thì trình duyệt của bạn sẽ tự động làm mới bất cứ khi nào bạn thay đổi bất kỳ tệp tĩnh nào.

Gói python django-livereload-server cung cấp giải pháp spiffy. Cài đặt nó:

$ pip install django-livereload-server

Thêm 'livereload.middleware.LiveReloadScript'-MIDDLEWARE_CLASSES trong settings.py.

Sau đó chạy

$ ./manage.py livereload

trước khi bắt đầu runserver.

tài liệu có thể tìm thêm tại the django-livereload-server github site

+0

Dường như không hoạt động nữa. – jasonleonhard

Các vấn đề liên quan