Upload
gabriel-freitas
View
465
Download
0
Embed Size (px)
DESCRIPTION
Customizando a Admin do django
Citation preview
Customizando a Admin do Django
Gabriel Freitas
• Quem programa em Python?
• Quem programa em Python?• Quem usa Django?
• Quem programa em Python?• Quem usa Django?• Quem começou a usar Django por conta do
Django Admin?
Django Framework
Django Framework
Vantagens• Fácil Implementação• Fácil Gerenciamento e Autenticação de Usuários• Fácil Controle de Níveis de Acesso• CRUD “pronto”• e…
“Nova Metologia de Desenvolvimento”
O que falta?• Dashboard Completo• Relatórios (Gráficos e Estatísticas)• Ações básicas(exportar objetos,• Multiple Upload• Ajax• ...
E agora?
E agora?
Django já fez muito por vocêAgora é sua vez de personalizá-lo
Começando..• Extenda o ModelAdmin:
Customizações Básicas
• list_display• list_per_page• list_filter• search_fields• fields• fieldsets• form• Inlines• Veja mais em:
https://github.com/django/django/blob/master/django/contrib/admin/options.py
Customizando Templates
• Os templates defaults ficam em:o contrib/admin/templates/admino https://github.com/django/django/tree/master/django/contrib/admin/te
mplates/admin
Customizando Templates
• Você pode sobescrevé-los em:o templates/admin/myapp
• Os arquivos são:o app_index.htmlo change_form.htmlo change_list.htmlo delete_confirmation.htmlo object_history.html
Customizando Templates
• Ou definir as seguintes variáveis
Crie Funções no Admin
• Você pode definir funcões na class que extende ao ModelAdmin, e chamá-las no list_display
• Ex: A Função abaixo retorna um thumb da imagem
Crie Funções no Admin
• Você pode definir funcões na class que extende ao ModelAdmin, e chamá-las no list_display
• Ex: A Função abaixo retorna um thumb da imagem
Defina Valores• Você pode “setar” valores dos fields usando:
o formfield_for_foreignkeyo formfield_for_manytomany
• Pode pegar variáveis via GET, definir Querysets, etc.
Custom Actions• Crie actions customizadas• Ex: Alterar Status de Itens, Enviar por Email, etc.
Custom Actions• Crie actions customizadas• Ex: Alterar Status de Itens, Enviar por Email, etc.
Use com moderação• Quando não usar:
o Alto grau de customizaçãoo Usuário Final
Estude o Código!https://github.com/django/django/tree/master/django/contrib/admin
Estude o Código!
Sem medo!