Django Tutorial 4 – Interfaccia Admin

Quando si sviluppa un applicazione web creare pannelli di admin è solitamente noioso e fastidioso eppure necessario per permettere, ad esempio, al gestore del negozio online che stiamo progettando di aggiungere oggetti al catalogo senza dover conoscere una riga di codice o del funzionamento di un DB. Per fortuna Django ci offre una valida scorciatoia: creare un interfaccia admin con Django ci costa solamente una decina di righe di codice.

Per prima cosa abilitiamo il pannello di admin modificando un paio di righe:

  • Decommentiamo la riga django.contrib.admin di INSTALLED_APPS in settings.py
  • Decommentiamo from django.contrib import admin e admin.autodiscover() da urls.py
  • Decommentiamo (r'^admin/', include(admin.site.urls)), da urlpatterns in settings.py

Per ultimo creiamo ex-novo un file admin.py nella nostra apps con questo contenuto:


from django.contrib import admin
from musicdb.models import *

admin.site.register(Artista)
admin.site.register(Genere)
admin.site.register(Ruolo)
admin.site.register(Gruppo)
admin.site.register(Album)
admin.site.register(Traccia)

Poi avviamo il server e andiamo su

http://localhost:8000/admin/

Per accedere al favoloso pannello di amministratore.

La schermata di login del pannello di admin!

La schermata principale del pannello di amministrazione!

Semplice, facile ma estremamente potente. 🙂

Tuttavia ci sono ancora alcuni difetti. Ad esempio Django pluralizza le parole aggiungendo il suffisso “s” alla parola come nel caso inglese, cosa che non va bene in italiano; inoltre se apriamo una tabella ci troveremo davanti tanti oggetti anonimi come “Artista object”, “Gruppo object” e così via mentre noi vogliamo che ci indichi, ad esempio, nome e cognome di un artista o il nome del gruppo.

Rimuoveremo tutti questi piccoli difetti la prossima volta con alcune piccole modifiche al modello.

Comments are closed.