Ad utilizzare l’interfaccia di amministrazione di Django, è necessario seguire alcuni passaggi fondamentali come documentato dal sito ufficiale di Django.
Prima di tutto, è importante assicurarsi che ‘django.contrib.admin’ sia incluso in `INSTALLED_APPS` nel file `settings.py` del progetto. Inoltre, è necessario includere le URL dell’interfaccia di amministrazione nella tua mappa URL principale, utilizzando `path(‘admin/’, admin.site.urls)` nel tuo file `urls.py` (Fonte: Django Project).
Una volta che l’interfaccia di amministrazione è abilitata per il progetto, è possibile creare un account amministratore utilizzando il comando `createsuperuser` dal prompt dei comandi. Questo creerà un utente con tutti i diritti di accesso e modifica all’interfaccia di amministrazione.
Dopo esserti autenticato con il tuo account amministratore, vedrai un’interfaccia che elenca tutte le app (applications) installate nel progetto che contengono almeno un modello. Per far apparire i modelli delle tue app personalizzate in questa interfaccia, devi registrarli. Per fare ciò, è sufficiente importare i modelli nel file `admin.py` dell’applicazione e poi usare il decoratore `@admin.register` o la funzione `admin.site.register(Model)`. Questo consentirà all’interfaccia di amministrazione di riconoscere i modelli (Fonte: Real Python).
L’interfaccia di amministrazione è poi personalizzabile attraverso diversi metodi. Per esempio, è possibile personalizzare l’aspetto del sito di amministrazione modificando il modello di amministrazione predefinito di Django, oppure è possibile personalizzare il modo in cui i dati sono visualizzati utilizzando le classi `ModelAdmin`. Queste classi consentono di definire cose come il campo di ricerca, i filtri, i campi di sola lettura e altre opzioni (Fonte: Django Project).
In conclusione, l’interfaccia di amministrazione di Django è uno strumento potente che, con un po’ di configurazione, può soddisfare molte esigenze di gestione dei contenuti. È importante notare, tuttavia, che non è destinata a essere utilizzata come interfaccia utente finale per il tuo progetto. Invece, è più adatta per l’uso da parte degli sviluppatori e del personale del sito per la gestione delle risorse interne.
Fonti:
1. Django Project – The Django admin site: https://docs.djangoproject.com/en/4.0/ref/contrib/admin/
2. Real Python – Django Admin: An Ultimate Guide for Using and Customizing: https://realpython.com/tutorials/django-admin/
3. Django Project – ModelAdmin objects: https://docs.djangoproject.com/en/4.0/ref/contrib/admin/#modeladmin-objects