Configurações de caminhos absolutos em um projeto Django

Definir o caminho correto para MEDIA_ROOT e STATIC_ROOT não é uma configuração que sai da caixa quando você inicia um novo projeto Django.

Para manter as mesmas configurações em vários ambientes, sempre uso esse truque, para poder mover o projeto e sempre obter os caminhos corretos no meu arquivo de configurações.

No topo do seu arquivo settings.py , coloque as seguintes linhas:

import os
PROJECT_DIR
= os.path.abspath(os.path.dirname(__file__))

Agora, quando você precisar definir caminhos, basta usar a função os.path.join, assim:

MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media')

e isto:

STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')

e coloque os diretórios ‘estático’ e ‘mídia’ no mesmo diretório onde o settings.py foi salvo.