Através do comando python manage.py collectstatic informamos ao Django quais arquivos estáticos vincular ao projeto, mas existe a operação inversa? Ou basta remover do diretório static monitorado pelo Django?
Grato.
Através do comando python manage.py collectstatic informamos ao Django quais arquivos estáticos vincular ao projeto, mas existe a operação inversa? Ou basta remover do diretório static monitorado pelo Django?
Grato.
Olá Leonardo, tudo bem com você?
O uso do comando python manage.py collectstatic tem como objetivo coletar os arquivos estáticos presentes em todos os nossos apps e direcioná-los para uma única pasta, essa coleta será essencial quando formos implementar nosso projeto para um servidor, assim o servidor terá que buscar em um único local um compilado de arquivos estáticos, sem a necessidade de realizar a coleta em cada app.
Atualmente o Django não possui um comando que realizará a operação inversa, porém, caso o seu objetivo seja remover os arquivos estáticos coletados que não estão atualizados ou que não são utilizados no projeto, você pode fazer o uso da a cláusula --clear
presente no comando collectstatic
, essa opção removerá os arquivos estáticos desatualizados e realizará uma nova coleta dos arquivos estáticos.
Abaixo o comando completo.
python manage.py collectstatic --clear
Executando o comando acima, será perguntado se tem certeza que deseja deletar todos os arquivos presentes na pasta static, digite yes e pressione enter para confirmar.
Caso seja necessário coletar os arquivos estáticos apenas de apps específicos, basta utilizar a cláusula -i
seguido do nome do app que deseja excluir da coleta, por exemplo:
python manage.py collectstatic -i <nome_do_app_que_nao_sera_coletado>
No entanto, reforço que caso queira remover permanentemente todos os arquivos estáticos que foram coletados, basta deletar a pasta static presente na raiz do projeto.
Fico à disposição em caso de dúvidas.
Abraços e bons estudos.
Olá Felippe, tudo ótimo e com você?
Perfeito, muito obrigado pela explicação.
Abraços.