Aggiungere filtri su Django Admin con List Filter

19 maggio 2022

Aggiungere filtri alla pagina di elenco di un modello su Django Admin utilizzando `list_filter`.

Cosa trovi in questo video

Aggiungere filtri alla pagina di elenco di un modello su Django Admin utilizzando `list_filter`.

Formato Video guida tecnica Spiegazione pratica pensata per imparare il concetto e applicarlo con piu consapevolezza.
Approfondimento Aggiungere filtri su Django Admin con List Filter La guida scritta contiene passaggi, esempi e riferimenti da consultare dopo il video.

Questo video accompagna la guida Aggiungere filtri su Django Admin con List Filter e riprende i passaggi principali con una spiegazione più diretta e visuale.

Sintesi del video

Aggiungere filtri alla pagina di elenco di un modello su Django Admin utilizzando list_filter.

Punti trattati

  • Definire un listfilter
  • da campi del Model
  • da SimpleListFilter
  • su tipi predefiniti
  • da RelatedOnlyFieldListFilter

Testo di supporto

Creare filtri nelle maschere di backoffice è indispensabile per poter comodamente fruire i dati per verificare, ad esempio, le registrazioni degli utenti, le vendite di prodotti, o la prossima attività da fare. Tuttavia visualizzare un intero elenco di prodotti, seppur paginati ed ordinabili nelle colonne dei dati, molte volte non consente di avere una visione di insieme precisa e puntuale. Ad esempio, qualora si vogliono vedere i soli prodotti venduti in una certa data, non conviene estrarre le informazioni da un elenco che prevede dati anche di date differenti da quella considerata. Per aiutare la navigazione dei dati ci vengono in soccorso i filtri. Un filtro consente di scremare i dati presentati e visualizzare solo quelli necessari.

Il framework Django, attraverso Django Admin, consente di aggiungere filtri alle proprie pagine in modo molto semplice. Attraverso i filtri è possibile visualizzare, ad esempio, tutti i prodotti in un certo stato, tutti i contatti che vivono a Rovigo, e così via. In Django Admin è possibile aggiungere filtri utilizzando un list_filter. Un list_filter aggiunge, sulla sidebar della pagina contenente la lista degli elementi di un determinato modello, i filtri attivati. La pagina si presenta come segue:

Sulla parte destra della pagina si nota una colonna contenente i filtri aggiunti con list_filter. In questo articolo vedrai come aggiungere tali filtri.

Un list_filter è aggiunto, come tupla o lista di elementi, all’interno del ModelAdmin di un Model.

  • Filtro sul nome dei campi del Model
  • Filtro come classe che estende da SimpleListFilter
  • Filtro su tipi predefiniti (vedremo l’esempio del BooleanFieldListFilter)
  • Filtro su nome dei campi del tipo RelatedOnlyFieldListFilter

Approfondimento scritto

Per comandi, esempi e passaggi completi puoi leggere l’articolo collegato: Aggiungere filtri su Django Admin con List Filter .

Come continuare

Se vuoi riprendere il contenuto con calma, puoi rivedere il video su YouTube o usare l'articolo scritto come riferimento testuale.