Статические файлы на Django + Apache2 выдают ошибку URLconf - PullRequest
0 голосов
/ 21 мая 2018

Я пытаюсь интегрировать загруженную тему начальной загрузки в мой живой сайт.

У меня есть каталог / static на корневом уровне проекта django (где находится manage.py), который содержит все мои css /javascript files.

Из моих settings.py

STATIC_URL = '/static/'
STATICFILES_DIR = '/var/www/html/aerocredRoot/static'

В моем index.html

{% load static %}
...href="{% static 'assets/web/.......' %}">

и в моем urls.py

urlpatterns = [
    url(r'^%', views.index),
    url(r'^admin/', include(admin.site.urls)),
]

используя Django 1.11.13.

В инспекторе сети с интернет-браузером я продолжаю получать

Using the URLconf defined in Aerocred.urls, Django tried these URL 
patterns,in this order:

^$
^admin/
The current URL, static/assets/bootstrap/css/bootstrap.min.css, didn't match any 
of these.

Я пытался переместить статическую папку в подкаталог моего приложения, возиться с STATIC_ROOT и делать коллекторные вещи безрезультатно.

Ответы [ 3 ]

0 голосов
/ 21 мая 2018

Убедитесь, что формат для загрузки равен {% load static%}, а не (% load static%).

Вы запустили python manage.py collectstatic для хранения статических файлов в / var / www / html / aerocredRoot/ статический?

0 голосов
/ 22 мая 2018

Итак, я понял,

Мне нужно было следовать этому соглашению, как объяснено в документации Django.Поэтому я отредактировал свой urls.py, чтобы он соответствовал этому ...

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

, а затем отредактировал settings.py, чтобы определить

PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIR = '/var/www/html/aerocredRoot/static'
0 голосов
/ 21 мая 2018

Я думаю, это должно быть {% load staticfiles %}.

...