我正在尝试为“自定义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)
并为其分配随机数的服务器。有任何想法吗?由于这仅用于测试目的,我希望我也必须以某种方式删除所有这些新条目?
答案 0 :(得分:0)
真的很简单,我只是像正常情况一样创建了一个模型对象(model = DummyOrder(servers_num=servers_random, luns_num=luns_random)
)。这似乎足以满足要求。