Ich schreibe eine Django-App, bei der ich viele Management.py-Befehle erwarte. Ich mag die Idee von Python-Funktionen mit Parametern mit Standardwerten, wobei Sie den Parameter wie folgt definieren:
%Vor%Ich schreibe meine Verwaltungsbefehle so, dass Sie wie folgt eingeben:
%Vor%Soweit ich das beurteilen kann, akzeptieren die Befehle von management.py diese Art von Argumentliste nicht. Daher habe ich einen Helfer erstellt, der folgendes tun kann:
%Vor%Gibt es einen besseren Weg, dies zu tun?
Aktualisiert: Per @rix, spätere Versionen von Django verwenden jetzt argparse , was bevorzugt werden sollte.
Ursprüngliche Antwort:
Ich glaube, dass der Standardansatz darin besteht, optparse zu verwenden, das sich in die vorhandene Option zum Parsen von Django einklinken kann bereits. Das Beispiel aus den 1.6 Dokumenten :
%Vor% Jetzt haben Sie Ihre Kommandozeilenargumente im options
Dictionary verfügbar. Die Python-Dokumentation sagt, dass optparse
veraltet ist, aber ich nehme an, dass die Django-Dokumente es empfehlen, weil es das ist, was Django für seine eigenen Verwaltungsbefehle verwendet.