Comandos Django
Comandos de terminal para gerenciar algumas funções do Django.
manage.py funciona como um intermediário entre o desenvolvedor e o Django, carregando as configurações do projeto e passando o comando para o sistema de gerenciamento de comandos do Django.É uma ferramenta essencial (um script utilitário) que facilita o gerenciamento do seu projeto Django, reunindo comandos para configuração, administração, e execução em um único script. Ele torna o processo de desenvolvimento e manutenção mais eficiente e organizado.
O manage.py permite rodar comandos importantes do Django sem precisar configurar variáveis de ambiente manualmente. Com ele, você pode criar tabelas no banco de dados, iniciar o servidor de desenvolvimento, criar superusuários, migrar modelos, e muito mais.
Ele encapsula o comando django-admin e automaticamente configura o ambiente com as configurações do projeto. exemplo: runserver é um comando do Django, mas ele é executado através do script manage.py. Em resumo, manage.py faz a mesma coisa que o django-admin mas configura a variável de ambiente DJANGO_SETTINGS_MODULE apontando para o arquivo settings.py do seu projeto.
📦 management/commands/ : É uma pasta usada por padrão para criar comandos customizados do Django que você pode rodar via terminal como: python manage.py nomedoseucomando. Cada arquivo .py dentro de commands/ é um comando novo que você pode rodar como se fosse nativo do Django. serve para:
-
Popular o banco com dados fake (como com Faker)
-
Executar tarefas agendadas
-
Limpar dados antigos
-
Integrar com APIs
-
Scripts que precisam rodar em produção/teste de forma isolada
projeto_tal/
│
├── backend/ # Projeto Django (Backend)
│ ├── .venv/ # Ambiente virtual
│ ├── projeto_tal ou config ou core/ # Aplicativo principal do Django
│ │ ├── __init__.py
│ │ ├── settings.py # Arquivo de configuração principal
│ │ ├── urls.py # URLs principais
│ │ ├── wsgi.py
│ │ ├── asgi.py
│ ├── apps/ # Outros apps Django (caso necessário)
│ ├── manage.py # Arquivo de gerenciamento do Django
│
├── frontend/ # Projeto React (Frontend)
│ ├── public/
│ ├── src/
│ ├── package.json # Dependências do React
│
├── .gitignore # Ignorar a pasta .venv, node_modules, etc
└── README.md # Documentação do projeto
Iniciar um projeto em Django
Cria um projeto Django com vários arquivos da configuração geral do projeto.
sem o . cria duas pastas com o mesmo nome, uma para o projeto e uma para o aplicativo.
Tente usar nomes descritivos (mas também, nesse caso, config e core são muito usados na comunidade):
-
✅ Preferido:
config, core,ecommerce,blog,sistema_escolar,meu_site -
🚫 Evite: setup,
project
$ django-admin startproject nome_do_projeto_e_app_principal # duas pastas
$ django-admin startproject nome_do_app_principal . # cria um projeto apenas com a pasta do app main
Criar Novo Aplicativo Django
$ python manage.py startapp nome_do_aplicativo
Executar projeto Django
No prompt ou ate mesmo no terminal do VS-Code navegue até a pasta do projeto e inicialize o servidor embutido do django.
runserver é um comando do Django, mas ele é executado através do script manage.py
Geralmente abre na porta padrão 8000: http://127.0.0.1:8000/.
$ python manage.py runserver
Definindo a porta de Execução
Para alterar a porta de execução do DJango basta colocar a porta na frente
$ python manage.py runserver 9000