0Pricing
Django Academy · Aula

Personalizando ModelAdmin

Defina list_display, list_filter e search_fields

Personalizando ModelAdmin é uma aula grátis de Django Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Django Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Django Academy inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Beyond the Defaults

The default admin works but feels plain. A ModelAdmin class lets you reshape how each model looks and behaves in the admin.

Subclass and Attach

Create a class that subclasses admin.ModelAdmin, then pass it when you register the model. That class holds all your tweaks.

class PostAdmin(admin.ModelAdmin):
    pass
admin.site.register(Post, PostAdmin)

Columns in the List

The list page shows one column by default. Set list_display to a tuple of field names and the admin renders each as a column.

list_display = ("title", "author", "created")

Filter the Sidebar

Big tables get hard to scan. Add list_filter and the admin shows a sidebar to narrow rows by those fields fast. 🔍

list_filter = ("status", "created")

Add a Search Box

Let staff hunt for records by text. Setting search_fields puts a search bar at the top that scans those fields.

search_fields = ("title", "author__name")

Click to Edit

By default only the first column links to the edit page. Use list_display_links to choose which columns are clickable instead.

list_display_links = ("title",)

Edit Inline in the List

Want to change a value without opening each row? Put a field in list_editable and you can edit it right on the list page.

list_editable = ("status",)

Prefill the Slug

Slugs are tedious to type. The prepopulated_fields option fills a slug live from the title as you type it. ⚡

prepopulated_fields = {"slug": ("title",)}

Order the Rows

Control the default sort with ordering. A leading minus sorts that field descending, so newest items can lead the list.

ordering = ("-created",)

Group the Form

Long edit forms feel cluttered. Use fieldsets to split fields into labeled, collapsible sections on the edit page.

Computed Columns

list_display can also call a method on your admin class. That lets you show derived values, like a short preview of the body.

def short(self, obj):
    return obj.body[:30]

Quick Check

Which option controls the columns shown on the list page?

Recap

With ModelAdmin you added columns, filters, search, and sorting. A few attributes turn a plain table into a powerful data console. 🛠️

Perguntas Frequentes

A aula “Personalizando ModelAdmin” é grátis?

Sim — o texto completo de “Personalizando ModelAdmin” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Django Academy, atualize para CoddyKit PRO. O curso de Django Academy inclui 4 aulas no total.

O que vou aprender em “Personalizando ModelAdmin”?

Defina list_display, list_filter e search_fields Você pratica Django Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Django Academy?

Nenhuma experiência prévia é necessária. Django Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Personalizando ModelAdmin”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Django Academy?

Sim. Cada aula de Django Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. createsuperuser e Como Fazer Login
  2. Registrando Modelos com admin.site
  3. Personalizando ModelAdmin
  4. Inlines e Campos Somente para Leitura
← Voltar para Django Academy