Вам не нужны разные имена для каждого скрытого поля. Вы можете иметь одно и то же имя несколько раз, и получить их все. Итак, давайте немного изменим ваши поля:
<input type=hidden name="{{ item.photo_imgsrc_1280 }}" id="file{{ forloop.counter }}">
<input type=hidden name="photo" value="{{ item.photo_imgsrc_1280 }}">
<input type=hidden name="description" value="{{ item.description }}">
Затем получите все значения для полей photo
и description
:
photo_names = self.request.POST.getall('photo')
descriptions = self.request.POST.getall('description')
Здесь photo_names
- список имен полей с фотографиями. Чтобы получить действительные поля изображения, вы должны сделать что-то вроде:
photos = [self.request.POST.get(name) for name in photo_names]
Теперь вы можете сгруппировать их в список кортежей (photo, description)
и выполнять итерацию один за другим:
data = zip(photos, descriptions)
for photo, description in data:
# do what you need with each single photo/desc...