Django - Interface Admin

Django fornece uma interface de usuário pronta para uso para atividades administrativas. Todos nós sabemos como uma interface administrativa é importante para um projeto da web. O Django gera automaticamente a interface de usuário administrativa com base em seus modelos de projeto.

Iniciando a Interface Admin

A interface Admin depende do módulo django.countrib. Para fazê-lo funcionar, você precisa ter certeza de que alguns módulos são importados nas tuplas INSTALLED_APPS e MIDDLEWARE_CLASSES do arquivo myproject / settings.py.

Para INSTALLED_APPS, certifique-se de ter -

INSTALLED_APPS = (
   'django.contrib.admin',
   'django.contrib.auth',
   'django.contrib.contenttypes',
   'django.contrib.sessions',
   'django.contrib.messages',
   'django.contrib.staticfiles',
   'myapp',
)

Para MIDDLEWARE_CLASSES -

MIDDLEWARE_CLASSES = (
   'django.contrib.sessions.middleware.SessionMiddleware',
   'django.middleware.common.CommonMiddleware',
   'django.middleware.csrf.CsrfViewMiddleware',
   'django.contrib.auth.middleware.AuthenticationMiddleware',
   'django.contrib.messages.middleware.MessageMiddleware',
   'django.middleware.clickjacking.XFrameOptionsMiddleware',
)

Antes de iniciar o seu servidor, para acessar a sua interface de administração, você precisa iniciar o banco de dados -

$ python manage.py migrate

O syncdb criará tabelas ou coleções necessárias, dependendo do tipo de banco de dados, necessário para a execução da interface admin. Mesmo se você não tiver um superusuário, será solicitado que você crie um.

Se você já tem um superusuário ou o esqueceu, você sempre pode criar um usando o seguinte código -

$ python manage.py createsuperuser

Agora, para iniciar a interface de administração, precisamos nos certificar de que configuramos uma URL para nossa interface de administração. Abra o myproject / url.py e você deverá ter algo como -

from django.conf.urls import patterns, include, url

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
   # Examples:
   # url(r'^$', 'myproject.views.home', name = 'home'),
   # url(r'^blog/', include('blog.urls')),

   url(r'^admin/', include(admin.site.urls)),
)

Agora basta executar o servidor.

$ python manage.py runserver

E sua interface de administrador pode ser acessada em: http://127.0.0.1:8000/admin/

Uma vez conectado à sua conta de superusuário, você verá a seguinte tela -

Essa interface permitirá que você administre grupos e usuários Django, e todos os modelos registrados em seu aplicativo. A interface oferece a capacidade de fazer pelo menos as operações "CRUD" (Criar, Ler, Atualizar, Excluir) em seus modelos.