
Aangepaste Django-commando's
Management commands, BaseCommand, argument parsing, scheduling, cron jobs, automatisering
1Waar moet het bestand van een aangepast Django management command worden geplaatst om automatisch te worden gedetecteerd?
Waar moet het bestand van een aangepast Django management command worden geplaatst om automatisch te worden gedetecteerd?
Antwoord
Aangepaste Django management commands moeten in de management/commands/ directory van een Django-applicatie worden geplaatst. Deze directory moet een __init__.py-bestand bevatten in zowel management/ als commands/. Django scant dit pad automatisch om beschikbare commando's te ontdekken. De Python-bestandsnaam wordt de naam van het commando dat via manage.py uitvoerbaar is.
2Welke basisklasse moet worden gebruikt om een aangepast Django management command te maken?
Welke basisklasse moet worden gebruikt om een aangepast Django management command te maken?
Antwoord
BaseCommand is de standaard basisklasse die door django.core.management.base wordt geleverd voor het maken van aangepaste commando's. Het biedt de nodige infrastructuur: argument parsing, afhandeling van uitvoerkleuren, foutbeheer en integratie met manage.py. De handle()-methode moet worden geïmplementeerd om de commandologica te bevatten.
3Hoe definieer je positionele argumenten in een aangepast Django management command?
Hoe definieer je positionele argumenten in een aangepast Django management command?
Antwoord
De methode add_arguments() maakt het mogelijk om commandoargumenten te definiëren met de argparse-parser. Voor positionele argumenten gebruik je parser.add_argument('naam') zonder streepje-voorvoegsel. Je kunt nargs opgeven voor het aantal verwachte argumenten ('+' voor een of meer, '*' voor nul of meer). De argumenten zijn vervolgens toegankelijk via het options-dictionary in handle().
Welke methode moet worden gebruikt om een succesbericht met de juiste kleuren weer te geven in een Django-commando?
Hoe signaleer je een fout die de uitvoering van een Django-commando stopt met een niet-nul exit-code?
+15 gespreksvragen
Andere Django-sollicitatieonderwerpen
Python-basis
Objectgeoriënteerd Python
Django-grondbeginselen
Django Models - Basis
Django Views
Django-templates
Django-formulieren
Geavanceerde QuerySets
Django-authenticatie
Django-middleware
Django Admin
Django REST Framework
Django-signalen
Bestandsupload
Django Caching
Django-sessies
Django E-mail
Django Testen
Django-beveiliging
Django-deployment
Geavanceerde Django ORM
Django-prestaties
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django in een microservices-ecosysteem
Django-internationalisatie
Django Design Patterns
Django Async & ASGI
Settings & Productieconfiguratie
Observability & monitoring
Beheers Django voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis