Você está na página 1de 24

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 comeou a usar Django por conta do Django Admin?

Django Framework

Django Framework

Vantagens
Fcil Implementao Fcil Gerenciamento e Autenticao de Usurios Fcil Controle de Nveis de Acesso CRUD pronto e

Nova Metologia de Desenvolvimento

O que falta?
Dashboard Completo Relatrios (Grficos e Estatsticas) Aes bsicas(exportar objetos, Multiple Upload Ajax ...

E agora?

E agora?
Django j fez muito por voc Agora sua vez de personaliz-lo

Comeando..
Extenda o ModelAdmin:

Customizaes Bsicas
list_display list_per_page list_filter search_fields fields fieldsets form Inlines Veja mais em: https://github.com/django/django/blob/master/dj ango/contrib/admin/options.py

Customizando Templates
Os templates defaults ficam em:
o contrib/admin/templates/admin o https://github.com/django/django/tree/master/django/contrib/admin/te mplates/admin

Customizando Templates
Voc pode sobescrev-los em:
o templates/admin/myapp
app_index.html change_form.html change_list.html delete_confirmation.html object_history.html

Os arquivos so:
o o o o o

Customizando Templates
Ou definir as seguintes variveis

Crie Funes no Admin


Voc pode definir funces na class que extende ao ModelAdmin, e cham-las no list_display Ex: A Funo abaixo retorna um thumb da imagem

Crie Funes no Admin


Voc pode definir funces na class que extende ao ModelAdmin, e cham-las no list_display Ex: A Funo abaixo retorna um thumb da imagem

Defina Valores
Voc pode setar valores dos fields usando:
o formfield_for_foreignkey o formfield_for_manytomany

Pode pegar variveis 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 moderao


Quando no usar:
o Alto grau de customizao o Usurio Final

Estude o Cdigo!
https://github.com/django/django/tree/master/djan go/contrib/admin

Estude o Cdigo!
Sem medo!

Você também pode gostar