Configurações compartilhadas do Django.

Somos grandes fãs do Django Debug Toolbar. No entanto, muitas vezes encontramos um problema que precisamos ligar ou desligar rapidamente, mesmo na produção. Agora, nossos arquivos de configurações de produção e teste são bastante diferentes. Então, descobrimos um truque para organizar os arquivos de configurações de modo que possam ser aprimorados com o mínimo de interrupção de longo prazo.

Primeiro, criamos um arquivo de configurações compartilhadas que contém todas as configurações comuns entre nossos servidores de produção e de teste.

Em nosso arquivo de configurações, importamos o arquivo de configurações compartilhadas.

Em seguida, importamos um arquivo de configurações do desenvolvedor. No entanto, para incluir algo como a barra de ferramentas de depuração django, ela precisa fazer parte da lista INSTALLED_APPS. A maneira comum de fazer isso é redefinir completamente. Mas isso significa que se adicionarmos um novo pacote django, teremos que adicioná-lo ao arquivo de configurações de desenvolvedor de todos.

Portanto, a solução que encontramos foi permitir que o arquivo de configurações extras defina uma nova propriedade chamada ADDITIONAL_APPS, que definiu quaisquer aplicativos adicionais que você deseja apenas em seu ambiente de depuração.

Em nosso arquivo de configurações principais agora importamos quaisquer configurações de desenvolvedor, se houver, e então se definirem propriedades adicionais, nós as adicionamos de volta à lista INSTALLED_APPS. Fazemos isso também para carregadores de modelo e processadores de contexto.

Isso torna as configurações extensíveis e de fácil manutenção a longo prazo.

Espero que você ache este truque útil.