makarovceo
@makarovceo

Не подгружаются javascript при DEBUG = False, что делать?

Добрый день) Сайт залит на сервер, при debug=true всё нормально, при false подгружается всё кроме javascript, даже если в адресной строке ввести домен/static/js/base.js - пишет ничего не найдено
  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Everything_is_bad
Потому что статику принято раздавать не через django, почитай уже документацию про деплой
Ответ написан
Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting
Не подгружаются javascript при DEBUG = False, что делать?

https://www.digitalocean.com/community/tutorials/w...
- При DEBUG = True - Django автоматически обслуживает статические файлы (JavaScript, CSS, изображения и т.д.) напрямую через встроенный сервер. Это упрощает процесс разработки, поскольку не требует дополнительной настройки веб-сервера для обслуживания статических файлов. Изменения в статических файлах отображаются немедленно (hot reload), что позволяет быстро тестировать изменения без необходимости перезапускать сервер или собирать статические файлы.
- При DEBUG = False - Django не обслуживает статические файлы напрямую. Вместо этого предполагается, что статические файлы будут обслуживаться через специализированный веб-сервер (Nginx, Apache), что является более оптимальным с точки зрения производительности и безопасности. Для сборки статики рекомендуется использовать команду $ python manage.py collectstatic. На выходе получится приблизительно следующая схема: Django <-> Static <-> Client.

Уточню, что шаблоны Django не "собираются" в одно место, как статические файлы. Вместо этого, они обрабатываются динамически сервером Django, каждый раз при обработке запроса. Django заполняет шаблоны соответствующими данными и генерирует>возвращает html клиенту.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы