статические файлы в django не работают (404), хотя путь правильный - PullRequest
0 голосов
/ 15 февраля 2019

HTML-страница отображается без какого-либо стиля или изображения из-за отсутствия статических файлов в Django

нагрузка:

{%  load staticfiles %}

это статический вызов:

<link rel="stylesheet" href="{% static  'fonts/icomoon/style.css' %}">

Настройка URL:

STATIC_URL = os.path.join(BASE_DIR, "static/")

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Итак, позвольте мне дать вам рабочий образец.Ваш файл settings.py может выглядеть следующим образом:

STATIC_URL = '/static/'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

Здесь у меня в корневом каталоге проекта есть папка «static», в которой находятся такие папки, как «css», «js» и т. Д. Вам также необходимо установитьэто в вашем urls.py, чтобы он был доступен для шаблона.Поэтому я бы сделал это следующим образом:

    from django.contrib import admin
    from django.urls import path
    from django.conf.urls.static import static
    from django.conf import settings

    urlpatterns = [

        path('', user_login),
        path('admin/', admin.site.urls), 
    ] 

    urlpatterns += staticfiles_urlpatterns()

Затем в верхней части HTML-страницы импортируйте статические файлы

{% load static from staticfiles %}
<link rel="stylesheet" href="{% static 'css/bootstrap.min.css'%}">
<link rel="stylesheet" href="{% static 'css/style.css'%}">

Надеюсь, это поможет

0 голосов
/ 15 февраля 2019

Вы указали базовый путь к Static_url.

Попробуйте следующие настройки:

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
]

Для Django 2.0 загрузка статических файлов в html требует нового синтаксиса загрузки:

{% load static %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...