У меня есть рабочая пользовательская команда django-admin, которую я использую для заполнения моей базы данных новой информацией. Опять же, все работает.Два аргумента в пользовательской команде django-admin
Тем не менее, теперь я изменил свои модели и немного поработал, чтобы принять два аргумента в качестве кортежа: имя и, а не просто «имя».
Предыдущий код ниже - рабочий. Запуск с помощью «manage.py хуга name1 name2 name3 ... и т.д. (пространство между различной арг)
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)
Можно ли передать два аргумента из Джанго-администратора пользовательской команды, где второй аргумент необязательно -> то есть (первый, последний = нет)?
Псевдокод ниже того, что я хотел бы использовать, используя ... "manage.py xyz (first1, last1) (first2, last2) < - или какой-либо вариации этого
Я уже изменил функцию DEF, чтобы принять ее как отдельную функцию. Я просто не знаю, как я могу заставить команду django-admin работать сейчас.
СПАСИБО! Это сработало хорошо. Сначала я надеялся иметь два отдельных аргумента, но это работает одинаково. – snakesNbronies
@modocache -v = 3? что он будет делать? – GThamizh
Этот ответ устарел, django теперь имеет встроенный метод 'add_arguments', который был добавлен в v1.8. См. Https://docs.djangoproject.com/en/2.0/howto/custom-management-commands/ – neuronet