fix: error when trying to change recipe image (#5771)

Co-authored-by: Michael Genson <71845777+michael-genson@users.noreply.github.com>
Co-authored-by: Kuchenpirat <24235032+Kuchenpirat@users.noreply.github.com>
This commit is contained in:
Mario Džoić
2025-08-16 10:41:46 +02:00
committed by GitHub
parent 6cbc308d83
commit c41a4a52ed
7 changed files with 115 additions and 26 deletions

View File

@@ -523,12 +523,12 @@ class RecipeController(BaseRecipeController):
@router.put("/{slug}/image", response_model=UpdateImageResponse, tags=["Recipe: Images and Assets"])
def update_recipe_image(self, slug: str, image: bytes = File(...), extension: str = Form(...)):
recipe = self.mixins.get_one(slug)
data_service = RecipeDataService(recipe.id)
data_service.write_image(image, extension)
new_version = self.recipes.update_image(slug, extension)
return UpdateImageResponse(image=new_version)
try:
new_version = self.service.update_recipe_image(slug, image, extension)
return UpdateImageResponse(image=new_version)
except Exception as e:
self.handle_exceptions(e)
return None
@router.post("/{slug}/assets", response_model=RecipeAsset, tags=["Recipe: Images and Assets"])
def upload_recipe_asset(
@@ -550,7 +550,7 @@ class RecipeController(BaseRecipeController):
file_name = f"{file_slug}.{extension}"
asset_in = RecipeAsset(name=name, icon=icon, file_name=file_name)
recipe = self.mixins.get_one(slug)
recipe = self.service.get_one(slug)
dest = recipe.asset_dir / file_name
@@ -567,9 +567,9 @@ class RecipeController(BaseRecipeController):
if not dest.is_file():
raise HTTPException(status.HTTP_500_INTERNAL_SERVER_ERROR)
recipe = self.mixins.get_one(slug)
recipe.assets.append(asset_in)
if recipe.assets is not None:
recipe.assets.append(asset_in)
self.mixins.update_one(recipe, slug)
self.service.update_one(slug, recipe)
return asset_in