Uma das partes mais poderosas do Django é a interface de administração automática. Ele lê os meta dados no seu modelo para fornecer uma interface pronta para produção que os administradores ou usuários chave podem usar imediatamente para começar a adicionar conteúdo ao site. Isto significa que o site Admin proporciona automaticamente uma interface gráfica para operações CRUD (criação, leitura, alteração e exclusão de dados) assim que um modelo é criado e registrado através de um objeto do administrador. No entanto o site Django Admin possui mais alguns recursos interessantes.
Django Admin: https://docs.djangoproject.com/en/1.7/ref/contrib/admin/
Usando o Site Django Admin
O site Django Admin é uma aplicação Django que por padrão já vem instalada no arquivo settings.py e sua rota já configurada no arquivo url.py de uma aplicação Django.
1 – Crie um projeto Django chamado MeuDjango e uma aplicação chamada meusite. Modifique os arquivos settings e url para configurar sua aplicação e o banco de dados MySQL. Utilize o código abaixo para criar um modelo para a aplicação e use o Custom Command para criar o SQL do modelo:
2 – Sincronize o banco de dados:
3 – Com o modelo criado e sincronizado ao banco de dados, vamos iniciar o servidor Django e utilizar o site Django Admin, no entanto precisamos configurar um usuário e senha para o site, caso não tenha configurado ainda utilize o Custom Command: python manage.py createsuperuser:
4 – Configure o usuário e o senha como preferir:
5 – Rode seu projeto para iniciar o servidor e chame a aplicação Django Admin e efetue um login:
6 – O site do administrador será aberto, no entanto precisamos registrar o modelo para que o Django crie uma interface gráfica para manipular seus dados:
7 – Em sua aplicação abra o arquivo admin.py e crie um objeto administrador e registre seu modelo, para uma visão geral dos arquivos necessários para configurar o Django Admin e como deve ficar o projeto e a aplicação, baseie-se na figura abaixo:
8 – Após registrar o modelo volte ao site do administrador e você já pode ver o sua aplicação e o modelo registrado:
9 – Você pode efetuar as operações CRUD através do site de administração:
10 – Você também pode manipular seus dados os alterando e deletando como desejar:
Exemplo:
Neste exemplo utilizamos a aplicação Django Admin para registrar nosso modelo e efetuar operações através da interface visual do site administrador do Django.
Model.py
from django.db import models # Cria modelo class DevAberto (models.Model): usuario = models.CharField(max_length=30) linguagem = models.CharField(max_length=50) email = models.EmailField() # Define unicode para o Django Admin def __unicode__(self): return self.usuario
Admin.py
from django.contrib import admin # Importa e registra modelo from meusite.models import DevAberto # Cria classe Admin class DevAbertoAdmin (admin.ModelAdmin): class Meta: model = DevAberto # Registra modelo admin.site.register(DevAberto, DevAbertoAdmin)