Задать вопрос
sergey_1990
@sergey_1990
1

Как добавит несколько изображений с доп параметрами 1 запросом в FastApi?

Доброго времени суток, столкнулся с такой ситуацией, нужно загружать кучку картинок с их описанием за один запрос вот никак не могу сообразить как лучше это сделать чтобы все корректно было, рабочую версию получилось только в таком виде собрать, все работает, НО в свагере пусто
class MyForm(BaseModel):
    title: str
    file: UploadFile
    
@router.post("/{board_id}/images")
async def formset(request: Request, board_id: int, session: AsyncSession = Depends(get_session)):
    board = await board_manager.get_board_by_id(session, board_id)
    form_data = await request.form()
    indexes = set()
    for key in form_data.keys():
        match = re.search(r'\d+', key)
        if match:
            indexes.add(match.group())
    formset = [
        MyForm(title=form_data[f"formset[{i}]title"],
               file=form_data[f"formset[{i}]file"])
        for i in indexes
        ]      
    for form in formset:
        # дальше всё отрабатывает исправно

Для наглядности набросал как это отправляется
661fd3fb63d46716736956.png
661fd433e3ddd171007581.png

Мне честно говоря эта схема не совсем нравится и в свагер я не понимаю как ее загнать, если кто-то поделится опытом буду благодарен
  • Вопрос задан
  • 42 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@firstmixon
массивом
{
"list_images":
[
{"":""}<- image1
,{"":""}<- image2
.
.
,{"":""}<- imageN
]
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы