django admin um overview básico

8
Django Admin Um overview geral

Upload: leandro-severino

Post on 10-Jul-2015

109 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Django admin   um overview básico

Django AdminUm overview geral

Page 2: Django admin   um overview básico

O que é o Django Admin O Admin do Django é uma app. Esta app está distribuida juntamente com o django, dentro do pacote contrib:

django.contrib.admin

Esta app quando instalada, monta um completo set de funcionalidades e recursos para realizar as operações mais comuns sobre models do Django, as famosas operações de CRUD - Create, Retrieve, Update e Delete.

Page 3: Django admin   um overview básico

Como ele funciona ?

O Django ao carregar o arquivo settings.py verifica dentro da tupla

INSTALLED_APPS a existência de todas as apps que devem estar disponiveis e carregadas no projeto.

Então, a primeira coisa que se tem que fazer é dizer ao django que será utilizado no projeto o admin dele.

Page 4: Django admin   um overview básico

Como ele funciona ? (Continuação)No INSTALLED_APPS ( 'django.contrib.auth', # Necessária para realizar a autenticação e acesso ao admin. 'django.contrib.contenttypes', # Necessária para realizar o mapeamento a tipos genéricos nas models. 'django.contrib.sessions', # Necessária para realizar o controle de sessão do admin. 'django.contrib.sites', # Cada admin está associado a um site. 'django.contrib.messages', # Para carregar as mensagens exibidas no admin. 'django.contrib.staticfiles', # Para carregar os arquivos estáticos no admin. ... 'django.contrib.admin' # A app de admin propriamente dita. )

Page 5: Django admin   um overview básico

Como ele funciona ? (Continuação) Após configurada as apps no settings.py, é necessário a realização do comando para criar as tabelas:

python manage.py syncdb

Com isso o projeto django sabe que o admin deverá estar acessível e disponível no projeto e também tem as tabelas necessárias criadas.

Com isso admin já está disponível ? ainda não, agora precisamos adicionar no arquivo urls.py do PROJETO essa configuração:

Page 6: Django admin   um overview básico

Como ele funciona ? (Continuação) from django.contrib import admin admin.autodiscover()

Obs: Essa função, que está no __init__.py do pacote django.contrib.admin, varre todas as apps setadas no settings.INSTALLED_APPS procurando por um arquivo chamado admin.py e registra elas no site padrão do django. urlpatterns = patterns('', #url(r'^$', include('website.urls')), url(r'^admin/', include(admin.site.urls)), )

Page 7: Django admin   um overview básico

Como ele funciona ? (Continuação) E….

Criar um arquivo admin.py dentro da pasta de sua app: from django.contrib import admin admin.site.register(SuaModel)

Page 8: Django admin   um overview básico

Como ele funciona ? (Continuação) O admin pode ser personalizado tanto em funcionalidades quanto em apresentação ? Sim, através de uma ModelAdmin e através da manipulação dos templates. (Tema para o próximo Ligthning talk)

Posso transformar o admin em uma app plugável ? e como deployar isso ? (Tema para o próximo do próximo Ligthning talk)

Alguns projetos de admin django-xadmin (https://github.com/sshwsfc/django-xadmin) django-yadmin (Nosso admin)