Admin Básico
Para exibir uma classe de modelo no Admin (aplicação de administração do site), você deve seguir os seguintes passos:
- Supondo que sua aplicação se chama "minha_app" que contenha as classes
"Produto" e "Categoria", edite o arquivo "settings.py" de seu projeto e acrescente as seguintes linhas à setting INSTALLED_APPS:
'django.contrib.admin', 'django.contrib.admindocs',
- Agora edite o arquivo "urls.py" e remova os comentários (#) das seguintes
linhas:
from django.contrib import admin admin.autodiscover()
isso irá fazer com que o Django procure por arquivos "admin.py" em todas as aplicações de seu projeto automaticamente.
Remova os comentários também destas linhas:
(r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/(.*)', admin.site.root),
isso fará com que seu projeto tenha URLs para o sistema de documentação do admin e do próprio admin, respectivamente.
- Agora crie um arquivo "admin.py" na pasta de sua aplicação e importe o
módulo do Admin da seguinte maneira:
from django.contrib import admin
- Importe em seguida a(s) classe(s) desejada(s) para acrescentar ao admin, como abaixo:
from models import Produto, Categoria
- Por fim, é preciso registrar a classe de modelo no site do Admin:
admin.site.register(Produto) admin.site.register(Categoria)
- Pronto! Agora rode o "manage.py runserver" e carregue o seu projeto nas URLs
"/admin/doc/ e "/admin/" para notar que haverá uma seção com o nome de sua aplicação contendo ali links para administração das classes registradas.
- Para modificar as colunas exibidas para a classe "Produto", vamos
supor que essa classe possui os campos "descricao", "referencia" e "categoria". Portanto edite novamente o arquivo "admin.py" e adicione as seguintes linhas:
from django.contrib.admin.options import ModelAdmin class AdminProduto(ModelAdmin): list_display = ('descricao', 'referencia', 'categoria')
e modifique a linha de registro da classe:
admin.site.register(Produto, AdminProduto)
- Basta salvar e rodar o site para carregar a página de listagem de produtos
para verificar que agora as colunas informadas no código serão exibidas na ordem especificada.
Tire outras dúvidas em nosso CookBook em Português