Django 4 Статические файлы: что является лучшей практикой

Я сейчас строю проект на Django 4.0 и хочу сделать управление статическими файлами лучше и чище для этой версии.

В настоящее время у меня есть дерево проекта :

enter image description here

А вот мой файл настроек :

BASE_DIR = Path(__file__).resolve().parent.parent.parent
(...)
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]

Когда я пытаюсь найти несколько видеороликов на эту тему, никто не использует такую же структуру и настройку для статических файлов. В этом примере у меня ошибка 404 на моем файле dist/css/output.css.

В своем HTML шаблоне я пытаюсь назвать его именно так :

<link href='{% static "css/dist/output.css" %}' type="text/css" rel="stylesheet">

Может ли кто-нибудь скопировать/выложить мне простую настройку для правильной работы со статикой? Или, по крайней мере, помогите мне понять, почему это не работает и что я должен делать?

Более того, я размещаю свой статический каталог вне моего основного приложения, но некоторые размещают его внутри. Так что я не знаю, что лучше...

Спасибо :)

Лучший способ настроить статические файлы в django 4 - использовать pathlib вместо импорта дополнительного модуля, например, os.
и проблема в том, что у вас нет папки css внутри папки static, поэтому вместо этого

STATICFILES_DIRS = [
    BASE_DIR / "static",
]

<link href='{% static "css/dist/output.css" %}' type="text/css" rel="stylesheet">

вы должны поставить это

<link href='{% static "dist/output.css" %}' type="text/css" rel="stylesheet">

или вы можете создать папку css и добавить в нее папку dist

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