Allow recipe fields to be empty

This commit is contained in:
Tyler Perkins 2023-09-13 21:04:32 -04:00
parent 5b4a232cb6
commit 41a19dd6d2
1 changed files with 27 additions and 30 deletions

View File

@ -16,50 +16,47 @@ class IngredientGroup(BaseModel):
purpose: Optional[str]
class Nutrients(BaseModel):
calories: str
carbohydrateContent: str
proteinContent: str
fatContent: str
saturatedFatContent: str
cholesterolContent: str
sodiumContent: str
fiberContent: str
sugarContent: str
servingSize: str
calories: Optional[str]
carbohydrateContent: Optional[str]
proteinContent: Optional[str]
fatContent: Optional[str]
saturatedFatContent: Optional[str]
cholesterolContent: Optional[str]
sodiumContent: Optional[str]
fiberContent: Optional[str]
sugarContent: Optional[str]
servingSize: Optional[str]
class Recipe(BaseModel):
author: Optional[str]
canonical_url: str
category: str
cook_time: int
cuisine: str
description: str
host: str
image: str
category: str = None
cook_time: int = None
cuisine: str = None
description: str = None
host: str = None
image: str = None
ingredient_groups: List[IngredientGroup]
ingredients: List[str]
instructions: str
instructions: str = None
instructions_list: List[str]
language: str
nutrients: Nutrients
prep_time: int
ratings: float
site_name: str
title: str
total_time: int
yields: str
language: str = 'en'
nutrients: Optional[Nutrients]
prep_time: int = None
ratings: float = None
site_name: str = None
title: str = None
total_time: int = None
yields: str = None
@router.get("/")
async def json(url: str):
async def parse_recipe_site(url: str):
recipe_dict = await getRecipe(url)
ret = Recipe.parse_obj(recipe_dict)
return ret
@router.get("/md")
async def markdown(url: str):
pass
async def getRecipe(url: str) -> str:
logging.info("Recipe requested from " + url)
if len(url) == 0:
raise HttpException(status_code=400, detail="url cannot be empty")