Задать вопрос
Ответы пользователя по тегу Django
  • Работа со STATIC_ROOT, STATICFILES_DIRS, MEDIA_ROOT, MEDIA_DIRS. Как работают и где следует размещать указанные в них директории?

    @DollaR84
    Общая статическая папка для проекта должна быть в корне проекта, а в приложениях свои папки static, но там есть один нюанс.
    Сначала в файле settings.py надо задать следующее, в месте где указывается static параметры:
    STATIC_URL = '/static/'
    STATIC_ROOT = os.path.normpath(os.path.join(BASE_DIR, 'staticfiles'))
    STATICFILES_DIRS = (
        os.path.join(BASE_DIR, 'static'),
    )


    затем надо организовать такую структуру папок:
    project/
        project/
            settings.py
            ...
        application1/
            static/
                application1/
                    ... тут статические файлы для приложения 1
        application2/
            static/
                application2/
                    ... тут статические файлы для приложения 2
        static/
            ...тут статические файлы для проекта
        manage.py
    ...

    То есть, в корневой директории сразу размещаются статические файлы, а в каталогах приложений, в папке static надо создать папку с именем приложения и уже в ней размещать статические файлы.
    Ответ написан