CRUD staat voor Create, Read, Update en Delete. Dit zijn de vier basishandelingen die je met data kunt uitvoeren in Django, een populair Python-framework voor webontwikkeling.
Allereerst moet je een nieuw Django project en een nieuwe app binnen dat project aanmaken. De commando’s in de terminal zijn django-admin startproject (naam project) en python manage.py startapp (naam app). Daarna moet je het volgende instellen: INSTALLED\_APPS, de database, het maken en uitvoeren van migraties, en het aanmaken van een superuser.
Zodra de setup voltooid is, kun je aan de slag met de uitvoering van CRUD.
1. Create : Om iets te “creëren” in Django, moet je eerst een model definiëren in models.py. Een model is eigenlijk een uitleg aan Django hoe de data in de database moet worden opgeslagen. Na het maken van een model, bijvoorbeeld ‘Car’, met velden als ‘brand’, ‘model’, ‘year’, enz., maak je een nieuwe ‘Car’ aan door Car.objects.create(brand=’Ford’, model=’Fiesta’, year=2020).
1. Read : Django stelt ons in staat om te “lezen” uit de database. Levert alle objecten op met Car.objects.all(), of een specifiek object met Car.objects.get(id=3).
1. Update : “Update” -functie kan worden uitgevoerd door eerst een specifiek item te halen met de ‘get’-functie, bijvoorbeeld car = Car.objects.get(id=1), dan het bijwerken van de velden zoals car.brand = ‘Toyota’ en ten slotte te slaan met car.save().
1. Delete : Tot slot is “verwijderen” gewoon een kwestie van het selecteren van een object en het aanroepen van de delete()-functie. Bijvoorbeeld: car = Car.objects.get(id=2), car.delete().
Voor deze CRUD-bewerkingen met Django is het belangrijk dat het Django ORM (Object-Relational Mapping) wordt begrepen. Dit is een manier om te communiceren met je database, zoals SQLite of PostgreSQL. In Django gebruik je Python-code in plaats van SQL om met de database te praten.
Het Django-beheerpaneel, dat wordt aangemaakt met python manage.py createsuperuser en toegankelijk is via de /admin url, biedt ook een visuele interface voor CRUD-bewerkingen. Na het registreren van uw model in admin.py met admin.site.register(Car), kun je Create, Read, Update en Delete operaties uitvoeren rechtstreeks vanuit de admin.
Bronnen:
- Django project documentatie: https://docs.djangoproject.com/
- Django for Beginners door William S. Vincent
- Django for Professionals door William S. Vincent.