From cdf4aae867ed4fe663bcd3d0727036bd157e1fc2 Mon Sep 17 00:00:00 2001 From: urec56 Date: Mon, 19 Feb 2024 15:27:03 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=B1=D0=B5=D0=BA=D0=B3=D1=80=D0=B0=D1=83=D0=BD=D0=B4=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/main.py | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/app/main.py b/app/main.py index b50a205..d13593a 100644 --- a/app/main.py +++ b/app/main.py @@ -1,10 +1,12 @@ import random import shutil import string +import os -from fastapi import FastAPI, UploadFile +from fastapi import FastAPI, UploadFile, Query from fastapi.staticfiles import StaticFiles from fastapi.middleware.cors import CORSMiddleware +from pydantic import BaseModel def generate_random_string(length=16): @@ -46,16 +48,6 @@ async def upload_avatar(file: UploadFile): return {'image_url': image_url} -@app.post('/upload_background', response_model=dict[str, str]) -async def upload_background(file: UploadFile): - name = file.filename.split('.')[0] - file_format = file.filename.split('.')[-1] - image_url = f'static/images/backgrounds/{name}_background.{file_format}' - with open('app/' + image_url, 'wb+') as file_object: - shutil.copyfileobj(file.file, file_object) - return {'image_url': image_url} - - @app.post('/upload_image', response_model=dict[str, str]) async def upload_image(file: UploadFile): name = generate_random_string(50) @@ -63,3 +55,13 @@ async def upload_image(file: UploadFile): with open('app/' + image_url, 'wb+') as file_object: shutil.copyfileobj(file.file, file_object) return {'image_url': image_url} + + +@app.post('/upload_background', response_model=list[str]) +async def upload_background(file: UploadFile): + name = generate_random_string() + image_url = f'static/images/backgrounds/{name}_background.png' + with open('app/' + image_url, 'wb+') as file_object: + shutil.copyfileobj(file.file, file_object) + backgrounds = ['static/images/backgrounds/' + background for background in os.listdir('app/static/images/backgrounds')] + return backgrounds