Создание фиктивных моделей с помощью команд управления Django - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь написать скрипт для пользовательских команд управления Django.Сценарий предназначен для создания заказов (модели), каждый из которых имеет произвольное количество серверов от 1 до 10, назначенных ему.На данный момент у меня есть:

class Command(BaseCommand):
    help = 'etc...'

def add_arguments(self, parser):
    parser.add_argument('dummy-orders', type=int, help='Number of dummy-orders to create')
    parser.add_argument('servers-min', type=int, help='Minimum random amount of servers')
    parser.add_argument('servers-max', type=int, help='Maximum random amount of servers (max=10)')

def handle(self, *args, **options):
    dummy_orders = options['dummy-orders']
    servers_min = options['servers-min']
    servers_max = options['servers-max']

    assert dummy_orders <= 3000
    self.check_input_integers(servers_min, servers_max, 'Servers')

    for i in range(dummy_orders):
        servers_random = randint(servers_min, servers_max)
        #test = Order.objects.create(servers_num=servers_random)
        model = Order
        #model = Order(servers_num=servers_random)
        #user = Order.objects.get_or_create()
        print(model)

По сути, каждый заказ также должен иметь случайное количество серверов, связанных с этим.Изначально не было поля servers_num, которое я должен был добавить в модели.Проблема, с которой я сталкиваюсь, состоит в том, как просто перебрать range(dummy_orders) и назначить ему случайное количество серверов.Есть идеи?Поскольку это предназначено только для целей тестирования, я ожидаю, что мне придется каким-то образом удалить и все эти новые записи?

1 Ответ

0 голосов
/ 27 января 2019

На самом деле все просто, я только что создал модельный объект, как обычно, например (model = DummyOrder(servers_num=servers_random, luns_num=luns_random)). Это казалось достаточным для того, что требовалось.

...