4. Django é ridiculamente rápido!
• É possível ir de uma idéia até uma
aplicação completa em muito pouco
tempo.
• Você não precisa ser um expert em
modelagem de banco de dados.
• Você não precisa ser um expert em
orientação a objetos.
• Ideal para prototipagem.
• Ideal para produção.
5. Django já vem com tudo.
• Quando você usa o Django, você já tem:
• Sistema de Usuários
• Painel Administrativo
• Site Maps
• Sistema de Templates
• Mapeador Objeto-Relacional
• Gestão de Arquivos Estáticos
• Suporte a múltiplos bancos de dados
• Servidor de Testes
• Formulários
• Migrações
6. Django é seguro.
• Muitos erros comuns em aplicações web
como SQL injections, XSS, CSRF, e
Clickjacking não fazem nem cócegas no
Django.
• Django segue as melhores práticas da
indústria.
7. Alguns locais que usam ou usaram Django:
• Pinterest
• Instagram
• Disqus
• Spotify
• Nasa
8. Preparando o Ambiente
• https://www.python.org/
• Baixe o Python para sua Plataforma
• Python 3.10 foi lançado semana passada!
• https://www.djangoproject.com/
• Instale o Django
• pip install Django
9. Começando um Projeto
• django-admin.py startproject MeuSite
• Isso cria a estrutura básica de um projeto Django.
• Cria uma pasta chamada MeuSite
• Cria um arquivo chamado manage.py que vai ser usado pra gerenciar o projeto
• Cria uma pasta chamada MeuSite que contém as configurações do projeto
• Contém o arquivo settings.py
• Contém o arquivo urls.py
10. settings.py
• Configurações do projeto:
• Quais aplicações serão instaladas
• Quais as configurações do banco de dados
• Padrão para desenvolvimento é SQLite 3
• Suporta: MySQL, MariaDB, PostgreSQL, Oracle
• Quais as configurações de segurança padrão
11. urls.py
• Define as rotas ou caminhos para que o projeto vai usar.
• /admin leva ao painel administrativo
12. Começando uma aplicação
• python manage.py startapp Produtos
• Cria uma pasta correspondente a uma aplicação chamada Produtos.
• models.py contém os modelos de objectos que vão ser usados na nossa aplicação.
• views.py contém as regras de negócio que serão usadas na aplicação
• admin.py descreve como os modelos vão ser mostrados no painel administrativo
13. models.py
• Modelos são classes em Python.
• Cada modelo vai ser uma tabela no banco de dados.
• Não precisa escrever SQL!
• Qualquer mudança feita na estrutura de um modelo gera uma migração.
• python manage.py makemigrations
• Depois que a migração é criada, você pode executá-la no banco de dados.
• python manage.py migrate
14.
15. admin.py
• Qual o comportamento dos modelos no painel administrativo?
• Registrando o modelo é possível criar/editar/remover.
16.
17. Painel Administrativo
• Migre os modelos
• Rode o servidor de testes
• python manage.py runserver
• Acesse em http://localhost:8000/admin
• Crie um usuário usando python manage.py createsuperuser
20. Templates
• Django tem uma linguagem própria para uso nos templates.
• Permite condicionais
• Permite laços de repetição
• Permite funções
• Templates são apenas para exibição dos dados.
• Toda a lógica fica nas Views e no Modelo.
21.
22. Urls.py
• Definir as rotas permite que os usuários acessem nosso site.
• Usa path converters ou expressões regulares.
• Proteção automática contra URL Injections.
25. Quer saber mais?
• PythonBrasil 2021
• De 11 a 17 de Outubro de 2021
• Evento online e gratuito
• Inscrições ainda estão abertas.
https://2021.pythonbrasil.org.br/
• Site Oficial do Django
• https://djangoproject.com/
• https://docs.djangoproject.com/