Mam niestandardowe polecenie django-admin, którego używam do zapełniania mojej bazy danych nowymi informacjami. Znowu wszystko działa.Dwa argumenty w komendzie niestandardowej django-admin
Jednak teraz zmieniłem moje modele i działają nieznacznie, aby zaakceptować dwa argumenty jako krotkę - imię i nazwisko, zamiast tylko "nazwa".
Poprzedni kod poniżej - działa. Uruchom za pomocą „manage.py xyz nazwa1 nazwa2 NAME3 ... itd. (Przestrzeń pomiędzy różnymi args)
from django.core.management.base import BaseCommand, CommandError
from detail.models import ABC
from detail.parser import DEF
class Command(BaseCommand):
args = '<name...>'
help = 'Populates the ABC class database'
def handle(self, *args, **options):
for symbol in args:
try:
info = DEF(name)
Czy to możliwe, aby przejść na dwóch argumentach z poleceniem django-admin niestandardowych gdzie drugi argument jest opcjonalnie -> ie (pierwszy, ostatni = brak)?
Pseudokod poniżej tego, co chciałbym uruchomić przy użyciu ... "manage.py xyz (first1, last1) (first2, last2) < - lub pewna wersja tego
zmieniłem już funkcję DEF, aby zaakceptować to odpowiednio jako samodzielną funkcję. Po prostu nie jestem pewien, jak mogę teraz uruchomić komendę django-admin.
DZIĘKI! To działało dobrze. Początkowo miałem nadzieję, że będą mieć dwa oddzielne argumenty, ale to działa tak samo. – snakesNbronies
@modocache -v = 3? co on zrobi? – GThamizh
Ta odpowiedź jest już nieaktualna, django ma teraz wbudowaną metodę 'add_arguments', która została dodana w wersji 1.8. Zobacz: https://docs.djangoproject.com/en/2.0/howto/custom-management-commands/ – neuronet