mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-28 13:05:26 -05:00
Feature/user seedable foods (#1176)
* remove odd ingredients * UI Elements for food * update translated percentage * spek -> speck * generate types * seeder api endpoints + tests * implement foods seeder UI * localize some food strings
This commit is contained in:
@@ -13,7 +13,7 @@ def fix_slug_food_names(db: AllRepositories):
|
||||
logger = root_logger.get_logger("init_db")
|
||||
|
||||
if not food:
|
||||
logger.info("No food found with slug: '{}' skipping fix".format(check_for_food))
|
||||
logger.info(f"No food found with slug: '{check_for_food}' skipping fix")
|
||||
return
|
||||
|
||||
all_foods = db.ingredient_foods.get_all()
|
||||
@@ -23,5 +23,5 @@ def fix_slug_food_names(db: AllRepositories):
|
||||
for food in all_foods:
|
||||
if food.name in seed_foods:
|
||||
food.name = seed_foods[food.name]
|
||||
logger.info("Updating food: {}".format(food.name))
|
||||
logger.info(f"Updating food: {food.name}")
|
||||
db.ingredient_foods.update(food.id, food)
|
||||
|
||||
@@ -14,7 +14,7 @@ from mealie.db.fixes.fix_slug_foods import fix_slug_food_names
|
||||
from mealie.repos.all_repositories import get_repositories
|
||||
from mealie.repos.repository_factory import AllRepositories
|
||||
from mealie.repos.seed.init_users import default_user_init
|
||||
from mealie.repos.seed.seeders import IngredientFoodsSeeder, IngredientUnitsSeeder, MultiPurposeLabelSeeder
|
||||
from mealie.repos.seed.seeders import IngredientUnitsSeeder, MultiPurposeLabelSeeder
|
||||
from mealie.schema.user.user import GroupBase
|
||||
from mealie.services.group_services.group_service import GroupService
|
||||
|
||||
@@ -32,7 +32,6 @@ def init_db(db: AllRepositories) -> None:
|
||||
|
||||
seeders = [
|
||||
MultiPurposeLabelSeeder(db, group_id=group_id),
|
||||
IngredientFoodsSeeder(db, group_id=group_id),
|
||||
IngredientUnitsSeeder(db, group_id=group_id),
|
||||
]
|
||||
|
||||
@@ -63,11 +62,11 @@ def db_is_at_head(alembic_cfg: config.Config) -> bool:
|
||||
return set(context.get_current_heads()) == set(directory.get_heads())
|
||||
|
||||
|
||||
def safe_try(name: str, func: Callable):
|
||||
def safe_try(func: Callable):
|
||||
try:
|
||||
func()
|
||||
except Exception as e:
|
||||
logger.error(f"Error calling '{name}': {e}")
|
||||
logger.error(f"Error calling '{func.__name__}': {e}")
|
||||
|
||||
|
||||
def connect(session: orm.Session) -> bool:
|
||||
@@ -108,14 +107,13 @@ def main():
|
||||
|
||||
db = get_repositories(session)
|
||||
|
||||
init_user = db.users.get_all()
|
||||
if init_user:
|
||||
if db.users.get_all():
|
||||
logger.info("Database exists")
|
||||
else:
|
||||
logger.info("Database contains no users, initializing...")
|
||||
init_db(db)
|
||||
|
||||
safe_try("fix slug food names", lambda: fix_slug_food_names(db))
|
||||
safe_try(lambda: fix_slug_food_names(db))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user