Django добавляет имя приложения (например, /blog) к статическим и графическим URL-адресам - как исправить?

Я работаю над проектом Django, и у меня возникла проблема со статическими и графическими URL. Django продолжает добавлять /blog (имя моего приложения) перед каждым статическим или графическим URL, даже если мои файлы находятся в глобальной папке static/.

Например:

Я ожидаю: /static/css/blog/bootstrap.css Django генерирует: /blog/static/css/blog/bootstrap.css Это вызывает ошибку 404, потому что путь /blog/static/ не существует.

Вот моя установка:

settings.py:

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    BASE_DIR / "static",
]
MEDIA_URL = '/media/'
MEDIA_ROOT = BASE_DIR / "media"

Структура проекта:

project/
├── static/
│   ├── css/
│   │   └── blog/
│   │       └── bootstrap.css
│   └── images/
├── Templates/  # Global templates directory
│   └── base.html
├── blog/
│   ├── urls.py
│   ├── views.py

Шаблон:

<link rel="stylesheet" href="{% static 'css/blog/bootstrap.css' %}" />
<img src="{% static 'images/example.jpg' %}" alt="Example">

urls.py:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('main.urls')),
    path('blog/', include('blog.urls')),
]
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Проблема :

Все статические и графические URL-адреса получают префикс /blog, например, такой:

/blog/static/css/blog/bootstrap.css

Как запретить Django добавлять префикс /blog к статическим и графическим URL? Спасибо за помощь!

Вернуться на верх