Load static django не работает

Статические файлы Django не загружаются

я новичок Django, работающий над своим первым проектом и имеющий проблемы со статическими файлами.

я создал простую систему аутентификации, используя django.contrib.auth состоит из двух шаблонов: mysite/templates/index.html и mysite/templates/registration/login.html . У меня есть глобальный статический контент в mysite/static который я хочу иметь доступ ко всем шаблонам, отображаемым всеми приложениями.

mysite/templates/index.html содержит что делает как «static/pics03.jpg» и загружается нормально, когда я посещаю url localhost:8000/

mysite/templates/registration/login.html содержит , который также оказывает как «static/pics03.jpg» и не загружается, когда я посещаю url «localhost:8000/accounts/login/»

в моем urls.py у меня есть:

в моем settings.py у меня есть:

у меня сложилось впечатление, что Django должен искать глобальный статический контент в STATICFILES_DIRS, но он не находит статический контент для входа в систему.html, даже если я изменю url-адрес там на абсолютный путь к статической папке. Кто-нибудь может пролить свет на это?

3 ответов

ваша проблема в том, что вы не слушаете URL «/ static/ » нигде в вашем urls.py

Если вы подаете заявку через веб-сервер, например Apache или nginx, то это нормально, поскольку веб-сервер будет обрабатывать статические файлы сам.

для разработки Django поставляется со встроенным статическим сервером

к urls.py, в самом конце добавить

что это делает, это добавить/ static / url и позволить вам обслуживать тех, у кого нет web-сервер.

некоторые люди скажут вам, что вам нужно обернуть URL-правила в «настройки if.DEBUG » использовать правила только для разработчиков, но это вообще не нужно, и на самом деле я считаю, что это плохой совет.

у вас возникли проблемы при использовании сборки в runserver или вы используете Apache или аналогичный? Я немного с этим боролся. Документация, которую я следую:https://docs.djangoproject.com/en/dev/howto/static-files/

вторая часть является ключевой, когда вы готовы к развертыванию. Вам нужно определить статический корень (который будет пустым для начала) и запустить manage.py collectstatic команда для перемещения статических файлов со всего проекта в эту папку. Тогда ты может служить им оттуда.

не меняется STATIC_ROOT=» до STATIC_ROOT=’/’ помочь?

мне кажется, единственная разница в том, что static/pics03.jpg (относительный путь) существует на домашней странице, но не на другой.

абсолютный путь . Если меняется STATIC_ROOT не помогает, просто добавьте / к началу URL-адресов.

Источник

Django-не удается загрузить статические CSS-файлы

я запускаю сервер разработки Django ( runserver ) на моем локальном компьютере (Mac OS X) и не может загрузить файлы CSS.

вот соответствующие записи в settings.py:

в моем views.py я запрашиваю контекст:

и в моем шаблоне << STATIC_URL >> отображается правильно:

где на самом деле находится. Я тоже побежал!—7—> чтобы убедиться, что все файлы были собраны.

у меня также есть следующие строки в моем urls.py:

Я новичок в Django, поэтому, вероятно, пропустил что-то простое-был бы признателен за любую помощь.

14 ответов

и django.contrib.staticfiles в своем INSTALLED_APPS на settings.py ?

и DEBUG=False ? Если это так, вам нужно позвонить runserver С

С Django 1.11.х+, вы должны настроить статические файлы в settings.py as,

и использовать его со статическим тегом шаблона,

еще одна простая вещь, чтобы попытаться остановить, а затем перезагрузить сервер, например

Я просмотрел другие ответы, но перезапуск сервера работал для меня.

эти отсутствуют в вашем settings.py ? Я вставляю один из параметров моего проекта:

кроме того, это то, что у меня есть в моем urls.py :

я использую Django 1.10.

    создать папку static на том же уровне settings.py мой settings.py ‘s путь это

/djcode/mysite/mysite/settings.py , так это dir

/djcode/mysite/mysite/static/ ;
создать две папки static_dirs и static_root на static , это

написать settings.py такой:

сделать эта команда $ python manage.py collectstatic в Shell;

создать папку css на static_dirs и положить в свой собственный .css файл, ваш файл css’ путь

Источник

Почему Django не загружает встроенные статические файлы?

У меня есть экземпляр Django, настроенный на сервере Apache, проходящем через uWSGI hunky dory. На моей локальной машине все выглядит идеально, когда я использую python manage.py runserver . К сожалению, в тот момент, когда я загрузил файлы на мой предварительно подготовленный сервер, он отказался загружать все встроенные статические файлы Django, возвращая 404, и я не знаю, почему.

Запрошенный URL указан как www.mysite.com/static/admin/css/fonts.css и похож на бэкэнд администратора ( css/base.css , css/dashboard.css и css/responsive.css ), Сначала я подумал, что это может быть что-то неправильно с пакетами, поэтому я заново установил Django, но не пошел. Еще не загружается.

Вот мой uWSGI config.ini:

И я включил Static root и url следующим образом (комментарии были для моего собственного понимания):

Однако стоит упомянуть, что у меня пока нет никаких статических файлов. Я не сейчас в разработке. Я просто хочу использовать шаблоны, поставляемые с Django.

Хорошо, поэтому я провел некоторое исследование и немного сократил его (спасибо @Alasdair за указание конкретной страницы в документах Django). Кажется, что я могу запустить python manage.py collectstatic просто отлично, и он импортирует все файлы, которые мне нужны, на www.mysite.com/static . Однако по какой-то причине django dosnt, похоже, «видит» файлы, поскольку они не отображаются в браузере (404 не найдены).

В свете этого я принимаю свою конфигурацию в settings.py ?

Мой Apache настроен как обратный прокси, используя следующую конфигурацию:

Я делаю это неправильно или что-то в этом роде? (Ps Я пытаюсь избежать необходимости редактировать статические ссылки на файлы файлов HTML, поскольку я действительно хотел бы знать, ЧТО Я делаю неправильно, так что это не повторится, так как Django должен быть в состоянии служить прямо с www.mysite.com/static )

Редактировать раунд 2:

Итак, я сделал это, как было предложено, и попытался настроить свой прокси-сервер, чтобы исключить статический каталог и просто нормально обслуживать файлы и добавить псевдоним, чтобы сопоставить URL-адрес с фактическим каталогом, но он все еще не работает должным образом. Кажется, полностью игнорирует мое исключение ProxyPass и отправляет его в Django, хотя я включил его выше менее конкретного правила? Интересная проблема, когда я указываю /admin/ вместо просто / для менее прокси- ProxyPass , он только ProxyPass этот URL-адрес Django, однако внезапно Django запускает 404 для /admin/ . Кроме того, я получаю 403 запрещенных для статических файлов, которые я пытался обслуживать. Мой текущий.conf выглядит так:

Источник

Джанго не передает статику во фронт

Доброго дня товариши, джанго не передает статику во фронт.

В какую сторону смотреть, все гугление приводит к тому что люди забыли лоад статик. Да это проблемма только в одном проекте где используется https://github.com/django-helpdesk/django-helpdesk но беда в том что его надо запустить, или может быть вы посоветуете другой хелдеск

Добавлено через 1 час 6 минут
Так дополнение, проблема кроется в урлах. Если статику подгружаем на макет который находится по урлу «/» то все ровно, а если «/ticket/», то ticket будет добавлен впереди урла. Наверно есть какой нить флаг в настройках, не подскажите какой?

nginx не отдает статику
Пытаюсь настроить nginx фронд-эндом, а apache бэк-эндом. Apache на 81, nginx на 80 порту. виртуал.

Nginx не отдает статику
Поставил nginx+Apache+PHP,статика не отдается воообще. /etc/nginx/nginx.conf user www-data;.

Координаты мыши при нажатии по статику
Подскажите пожалуйста, почему функция GetCursorPos не выдает точные координаты нажатия мыши? Или ка.

Хостинг под статику 200К страниц
Приветствую всех, кто заглянул в этот топик! Посоветуйте, пожалуйста, хостинг под статику с.

STATIC_URL = ‘/static/’
STATIC_DIR = os.path.join(BASE_DIR, ‘static’)
STATICFILES_DIRS = [STATIC_DIR]

Джанго и не должен отдавать статику. Это забота веб-сервера (nginx, например).

На странице у вас всё верно (однако, лчше будет добавить слеш в начале, как советует Onet1me).

Добавлено через 1 минуту
И на сервере нужно запустить команду

Как правильно приватно хранить статику?
Приветствую! Задался я тут вопросом. А как правильно приватно хранить статику, в частности.

Как снять статику с внешнего HDD (USB)
Когда подключаю внешний HDD к USB компа — часто проскакивает разряд, и комп перезагружается. .

Как узнать по какому статику (окно STATIC) кликнули?
Здравствуйте. Есть немодальное диалоговое окно. Зажимаем левую кнопку мыши и ведем по окну.

Не отображается шаблон в джанго
переходя по адресу http://127.0.0.1:8000/ вижу пустую страницу, что-то я явно делаю не так. вот.

Джанго. Личный кабинет
Здравствуйте, не могу понять почему во view в методе UserAccountView current_user ничего не.

Источник

Почему Django-CMS не видит пользовательские CSS/JS?

Django-CMS отказывается видеть статические файлы в каталоге static проекта. Те что создаются вручную — просто не находит. А те что установливались вместе с django и django-cms по прежнему берутся из ../env/lib/python3.6/site-packages/cms/static/cms/
collectstatic сделал.
settings.py

  • Вопрос задан более двух лет назад
  • 498 просмотров

1. Попробуй точно указать путь BASE_DIR. У меня сделано так:

2. В urls.py попробуй сделать так:

Т.е. напрямую свяжи с переменной (мб поможет, ну у меня лично так сделано, и так рекомендуют сами разработчики джанги)

3. Проверь наличие ‘django.contrib.staticfiles’ в переменной INSTALLED_APPS в settings.py

4. Так же проверь наличие переменной

5. Ну и самое главное, не забудь импортировать статику в шаблон)

Так же на это может повлиять веб-сервер, для того что бы это понять, попробуй загрузить статику на своем пк, если получится — надо настраивать веб-сервер.

Если не получится отпиши, будем дальше думать)

Проверил всё вышеперечисленное. Не помогло.
Довел urls.py до вот такого состояния:

print(settings.STATIC_ROOT) выдает путь к нужной мне папке (/home/. /blog/static
)
print(urlpatterns) — вот такое: [.*)$’>, .*)$’>] (вроде все ок)

И все равно: 127.0.0.1:8000/static/css/style.css — 404 (файл лежит в /home/. /dcms/blog/static/css/)
А 127.0.0.1:8000/static/cms/css/3.6.0/cms.base.css — ок (этот лежит в /home/. /dcms/env/lib/python3.6/site-packages/cms/static/cms/css/3.6.0/cms.base.css)

Это может быть связано с тем что я работаю в venv а не «на прямую»?

Shua_inc, для того что бы открывать по ссылке файлы тебе нужно прописать url для них.
Примерный код:

Или как вариант

но дебаг должен быть тру и не рекомендуется вообще так делать

Источник

Читайте также:  Как настроить микрофон с помощью adobe audition
Оцените статью