Perfil
Propostas
Django o framework web mais completo que você respeita
Django é um dos frameworks web mais usados em Python. Uma das suas grandes vantagens é a simplicidade dos recursos da sua ORM para manipular bancos de dados.
O objetivo dessa palestra é apresentar a estrutura de um projeto em Django focado em persistir, organiar e recuperar dados de forma simples e intuitiva através da ORM da ferramenta. Pretendo apresentar de forma breve a arquitetura do framework, introduzindo os passos mais básicos para a criação de uma aplicação, e explorar com mais detalhes os recursos de manipulação de bancos. Meu foco será em apresentar o papel de cada elemento dentro da arquitetura do framework numa proposta de organização para uma aplicação de CRUD.
Os tópicos abordados serão:
- Arquitetura do Django: entre a web e o banco, quem faz o que?
- O Modelo: representando entradas de uma tabela em objetos Python
- Managers e QuerySets: as outras abstrações pythonicas para lidar com bancos
- Métodos úteis de todos os dias para fazer consultas simples, intuitivas e reaproveitáveis
Usando recursos avançados da ORM do Django para consultas mais eficientes
A ORM do Django é uma ferramenta poderosa para realizar consultas em bancos de dados de forma simples e pythonica. Com algumas poucas chamadas de métodos já é possível realizar diversas consultas interessantes em um conjunto de dados.
Mas e quando essas funcionalidades mais básicas não são mais suficientes? Adicionando um pouco mais de complexidade à nossas queries, é possível otimizar consultas pesadas ou crirar novas que não são nem possíveis com os métodos mais simples.
Sabe aquela parte da documentação onde a gente nunca chega e pensa "um dia eu vou usar essas coisas"? O propósito dessa palestra é finalmente explorar essa mina de ouro que são os recursos avançados dos QuerySets do Django.
Para ver o potencial disso na prática, nada melhor do que dados da vida real. Afinal, queremos saber como esses recursos podem otimizar projetos concretos. São duas bases de dados públicos do Brasil: todos os sócios de empresas do país e gastos de Cota Parlamentar da Câmara dos Deputados. Vamos tentar responder perguntas complexas a partir desses dados usando recursos como Prefetch, FilteredRelatios, F expressions e Subquery.