Python loop until length

Итак, у меня проблемы с получением некоторых данных в мою БД. Я не очень хорошо разбираюсь в python и пытаюсь научиться.

Итак, вот данные, которые я отправляю на сервер Django:

enter image description here

enter image description here

как вы видите, я получаю на сервер ФАЙЛЫ с именем doc[i] и хочу сохранить имя файла в БД. но я не знаю, как перебрать их в цикле.

Это то, что я делаю на данный момент:

def submit_quality_dept_application(request, application_id):
doc0 = request.FILES['doc0']
length = request.data['length']
application = Application.objects.get(id=application_id)
application_state = application.application_state
application_state['doc0'] = doc0.name
Application.objects.filter(id=application_id).update(
    application_state=application_state)
return Response(length, status=status.HTTP_200_OK)

Таким образом, это работает для doc0, и я могу сохранить его имя в БД. но я хочу перебрать все doc[i] и сохранить их в DB.

есть предложения?

Вы можете перечислить элементы с помощью range(…) [Python-doc]:

def submit_quality_dept_application(request, application_id):
    n = int(request.data['length'])
    application = Application.objects.get(id=application_id)
    application_state = application.application_state
    for i in range(n):
        doc = request.FILES[f'doc{i}']
        application_state[f'doc{i}'] = doc.name
    Application.objects.filter(id=application_id).update(application_state=application_state)
    return Response(length, status=status.HTTP_200_OK)

Но я не уверен, что это лучший способ обработки нескольких файлов. Возможно, будет лучше отправить список файлов в качестве запроса, например, для одного и того же ключа.

Вернуться на верх