Django

Niestandardowe komendy Django

Management commands, BaseCommand, parsowanie argumentów, harmonogramowanie, zadania cron, automatyzacja

18 pytań z rozmów·
Senior
1

Gdzie należy umieścić plik niestandardowego management command Django, aby był automatycznie wykrywany?

Odpowiedź

Niestandardowe management commands Django muszą być umieszczone w katalogu management/commands/ aplikacji Django. Katalog ten musi zawierać plik __init__.py zarówno w management/, jak i w commands/. Django automatycznie skanuje tę ścieżkę, aby odnaleźć dostępne komendy. Nazwa pliku Python staje się nazwą komendy wykonywalnej przez manage.py.

2

Której klasy bazowej należy użyć do utworzenia niestandardowego management command Django?

Odpowiedź

BaseCommand to standardowa klasa bazowa dostarczana przez django.core.management.base do tworzenia niestandardowych komend. Zapewnia niezbędną infrastrukturę: parsowanie argumentów, obsługę kolorów wyjścia, zarządzanie błędami oraz integrację z manage.py. Metoda handle() musi zostać zaimplementowana, aby zawierać logikę komendy.

3

Jak zdefiniować argumenty pozycyjne w niestandardowym management command Django?

Odpowiedź

Metoda add_arguments() pozwala definiować argumenty komendy za pomocą parsera argparse. Dla argumentów pozycyjnych używa się parser.add_argument('nazwa') bez przedrostka myślnika. Można określić nargs dla liczby oczekiwanych argumentów ('+' dla jednego lub więcej, '*' dla zera lub więcej). Argumenty są następnie dostępne przez słownik options w handle().

4

Której metody należy użyć do wyświetlenia komunikatu o sukcesie z odpowiednimi kolorami w komendzie Django?

5

Jak zasygnalizować błąd zatrzymujący wykonanie komendy Django z niezerowym kodem wyjścia?

+15 pytań z rozmów

Opanuj Django na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo