Das Django-Admin-Interface
Daten mit der Admin-Oberfläche verwalten
Das Django-Admin-Interface ist eine kostenlose Python Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Python Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Python Academy-Kurs umfasst insgesamt 4 Lektionen.
Die integrierte Administration
Django wird mit einer leistungsfähigen Administrationsoberfläche ausgeliefert: einer automatisch erzeugten Weboberfläche zur Verwaltung Ihrer Daten. Sie gehört zu den beliebtesten Funktionen von Django.
# The admin gives you CRUD screens
# for your models with zero UI code
print('Django admin manages data out of the box')Die Administration ist bereits installiert
Die Administration befindet sich in django.contrib.admin, ist standardmäßig in INSTALLED_APPS enthalten und in die urls.py des Projekts eingebunden.
# mysite/urls.py
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
print('admin/ is mapped to the admin site')Einen Superuser erstellen
Für die Anmeldung benötigen Sie ein Administrationskonto. Erstellen Sie es mit python manage.py createsuperuser und folgen Sie den Eingabeaufforderungen.
# python manage.py createsuperuser
# Username: admin
# Email: admin@example.com
# Password: ********
print('createsuperuser makes an admin login')Anmelden
Starten Sie den Server und rufen Sie /admin/ auf. Melden Sie sich mit den Zugangsdaten Ihres Superusers an, um das Dashboard zu öffnen.
# python manage.py runserver
# Open http://127.0.0.1:8000/admin/
print('Visit /admin/ and log in')Ein Model registrieren
Models erscheinen erst in der Administration, wenn Sie sie registrieren. Erledigen Sie dies in der admin.py der App mit admin.site.register().
# blog/admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
print('Post now appears in the admin')Daten verwalten
Nach der Registrierung stehen Ihnen vollständige CRUD-Oberflächen zur Verfügung: Sie können alle Zeilen auflisten, neue hinzufügen, bearbeiten und löschen – ganz ohne eigene Formulare zu schreiben.
# In the admin you can:
# - view a list of all Posts
# - add a new Post
# - edit or delete existing ones
print('Full CRUD with no extra code')Mit ModelAdmin anpassen
Eine ModelAdmin-Klasse passt an, wie ein Model angezeigt wird. Mit list_display legen Sie fest, welche Spalten in der Listenansicht erscheinen.
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
list_display = ('title', 'created', 'published')
admin.site.register(Post, PostAdmin)
print('list_display picks the columns')Suche und Filter
Fügen Sie search_fields für ein Suchfeld und list_filter für Filter in der Seitenleiste hinzu, um große Datenmengen zu durchsuchen.
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
search_fields = ('title',)
list_filter = ('published',)
admin.site.register(Post, PostAdmin)
print('Search box and sidebar filters added')Der register-Dekorator
Der Dekorator @admin.register() ist eine übersichtliche Alternative zu einem separaten Aufruf von admin.site.register().
from django.contrib import admin
from .models import Post
@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
list_display = ('title',)
print('@admin.register is the decorator form')__str__ ist wichtig
Definieren Sie __str__ in Ihrem Model, damit die Administration eine lesbare Bezeichnung statt „Post object (1)“ anzeigt.
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=200)
def __str__(self):
return self.title
print('__str__ gives a readable admin label')Berechtigungen
Die Administration berücksichtigt Benutzerberechtigungen. Sie können Benutzer mit eingeschränkten Mitarbeiterrechten anlegen, sodass nicht alle über vollständigen Superuser-Zugriff verfügen.
# Staff users (is_staff=True) can access the admin
# Permissions control which models they can edit
print('Permissions limit admin access')Kurze Überprüfung
Testen Sie Ihr Wissen über die Django-Administration.
Zusammenfassung
Sie haben die Django-Administration zur Verwaltung von Daten verwendet.
- Die Administration ist integriert und unter
/admin/erreichbar - Erstellen Sie ein Konto mit
createsuperuser - Registrieren Sie Models in
admin.py, um CRUD-Oberflächen zu erhalten ModelAdminpasst Spalten, Suche und Filter an- Definieren Sie
__str__für lesbare Bezeichnungen; Berechtigungen beschränken den Zugriff
Häufig gestellte Fragen
Ist die Lektion „Das Django-Admin-Interface“ kostenlos?
Ja — der vollständige Text von „Das Django-Admin-Interface“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Python Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Python Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Das Django-Admin-Interface“?
Daten mit der Admin-Oberfläche verwalten Du übst Python Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Python Academy zu starten?
Keine Vorkenntnisse erforderlich. Python Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Das Django-Admin-Interface“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Python Academy-Lektion Code schreiben und ausführen?
Ja. Jede Python Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Projekte und Apps
- Modelle und Migrationen
- Views und URLs
- Das Django-Admin-Interface