Python Academy · Les

De Django Admin

Beheer gegevens met de beheersite

Les 4 van 413 stappen

De Django Admin is een gratis Python Academy-les op CoddyKit. Dit is les 4 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Python Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Python Academy bevat in totaal 4 lessen.

De ingebouwde beheeromgeving

Django wordt geleverd met een krachtige beheeromgeving: een automatisch gegenereerde webinterface om je gegevens te beheren. Het is een van de populairste functies van Django.

# The admin gives you CRUD screens
# for your models with zero UI code
print('Django admin manages data out of the box')

De beheeromgeving is al geïnstalleerd

De beheeromgeving staat in django.contrib.admin, dat standaard is opgenomen in INSTALLED_APPS, en is gekoppeld in het urls.py-bestand van het project.

# 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')

Een supergebruiker maken

Om in te loggen heb je een beheerdersaccount nodig. Maak er een met python manage.py createsuperuser en volg de aanwijzingen.

# python manage.py createsuperuser
# Username: admin
# Email: admin@example.com
# Password: ********
print('createsuperuser makes an admin login')

Inloggen

Start de server en ga naar /admin/. Log in met de inloggegevens van je supergebruiker om het dashboard te openen.

# python manage.py runserver
# Open http://127.0.0.1:8000/admin/
print('Visit /admin/ and log in')

Een model registreren

Modellen verschijnen pas in de beheeromgeving nadat je ze hebt geregistreerd. Doe dit in het admin.py-bestand van de app met 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')

Gegevens beheren

Na registratie krijg je volledige CRUD-schermen: alle rijen weergeven, nieuwe rijen toevoegen, bewerken en verwijderen, zonder formulieren te hoeven schrijven.

# 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')

Aanpassen met ModelAdmin

Een klasse ModelAdmin bepaalt hoe een model wordt weergegeven. list_display kiest welke kolommen in de lijstweergave worden getoond.

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')

Zoeken en filteren

Voeg search_fields toe voor een zoekvak en list_filter voor filters in de zijbalk, zodat je door grote gegevensverzamelingen kunt navigeren.

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')

De register-decorator

De decorator @admin.register() is een overzichtelijk alternatief voor het afzonderlijk aanroepen van 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__ is belangrijk

Definieer __str__ in je model, zodat de beheeromgeving een leesbaar label toont in plaats van 'Post object (1)'.

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')

Rechten

De beheeromgeving houdt rekening met gebruikersrechten. Je kunt medewerkersaccounts met beperkte rechten maken, zodat niet iedereen volledige toegang als supergebruiker heeft.

# Staff users (is_staff=True) can access the admin
# Permissions control which models they can edit
print('Permissions limit admin access')

Korte controle

Test je kennis van de beheeromgeving.

Samenvatting

Je hebt de Django-beheeromgeving gebruikt om gegevens te beheren.

  • De beheeromgeving is ingebouwd en gekoppeld aan /admin/
  • Maak een account met createsuperuser
  • Registreer modellen in admin.py voor CRUD-schermen
  • ModelAdmin past kolommen, zoeken en filters aan
  • Definieer __str__ voor leesbare labels; rechten beperken de toegang
Gratis beginnen

Leer Python met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
76
Lessen
320

Veelgestelde vragen

Is de les “De Django Admin” gratis?

Ja — de volledige tekst van “De Django Admin” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Python Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Python Academy bevat in totaal 4 lessen.

Wat leer ik in “De Django Admin”?

Beheer gegevens met de beheersite Je oefent met Python Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Python Academy te beginnen?

Ervaring vooraf is niet nodig. Python Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “De Django Admin”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Python Academy?

Ja. Elke les over Python Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Projecten en apps
  2. Modellen en migraties
  3. Views en URL's
  4. De Django Admin
← Terug naar Python Academy