Olá, Fábio! Tudo joia?
Que bom que você está avançando no curso! A sua dúvida é bastante pertinente.
Quando você importa um projeto do GitHub e o arquivo .env não está presente, o Django pode estar utilizando uma SECRET_KEY que está definida diretamente no arquivo settings.py. Isso é comum em projetos de exemplo ou em ambientes de desenvolvimento, onde a SECRET_KEY pode ser definida diretamente no código para facilitar a configuração inicial.
Dê uma olhada no seu arquivo settings.py e procure por algo como:
SECRET_KEY = 'sua_secret_key_aqui'
Se você encontrar essa linha, significa que a SECRET_KEY está sendo definida diretamente no arquivo de configurações do Django, e é por isso que o projeto está funcionando sem o arquivo .env.
Para seguir as boas práticas de segurança, especialmente em ambientes de produção, é recomendado mover essa SECRET_KEY para um arquivo .env e garantir que ele não seja enviado ao GitHub. Você pode fazer isso utilizando a biblioteca python-decouple ou outra similar para gerenciar as variáveis de ambiente.
Aqui está um exemplo de como você pode ajustar o seu settings.py para usar uma SECRET_KEY do arquivo .env:
Instale a biblioteca python-decouple:
pip install python-decouple
Crie um arquivo .env na raiz do seu projeto (não esqueça de adicioná-lo ao .gitignore):
SECRET_KEY=sua_nova_secret_key
Modifique o seu settings.py para usar a SECRET_KEY do arquivo .env:
from decouple import config
SECRET_KEY = config('SECRET_KEY')
Dessa forma, sua SECRET_KEY ficará segura e não será exposta no repositório do GitHub.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.