• Как сгенерировать билеты при создании матча?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    По идее, в билетах добавить charfield, куда и будет записываться код билета и в цикле генерировать и сохранять записи.
    Что-то вроде этого
    for line in range(1,10):
    	for place in range(1,50):
    		print(f'Билет на {line}-й ряд, {place}-е место')

    9Pry9YMCTIE.jpg?size=979x512&quality=96&sign=14119bdb09c0682256f9d76c4b0aa345&type=album
    Только вместо принта сохранять в базу.
    Конкретно по реализации, этот код вынести в отдельную функцию и вызывать из метода save у Matches c указанием pk (можно и в самом методе, конечно, но пункт ниже).
    Не обязательно, но желательно - выполнять данную функцию асинхронно, чтобы не "ложить" систему, пока будет идти процесс.
    (Для этого стоит использовать Celery + reddis/rabbitMQ)
    P.s. Цикл in range() не захватывает последнее число (Видно на скрине в примере, задано 50 мест, но последнее - 49)
    Ответ написан
    Комментировать