mirror of
https://github.com/hay-kot/mealie.git
synced 2025-08-22 14:33:33 -07:00
recipe updates
This commit is contained in:
parent
c87bd44fd3
commit
3482200188
4 changed files with 40 additions and 35 deletions
Binary file not shown.
|
@ -170,7 +170,6 @@ class BaseDocument:
|
||||||
.one()
|
.one()
|
||||||
)
|
)
|
||||||
|
|
||||||
print(result.dict())
|
|
||||||
session.delete(result)
|
session.delete(result)
|
||||||
|
|
||||||
session.commit()
|
session.commit()
|
||||||
|
|
|
@ -3,7 +3,7 @@ from settings import USE_MONGO, USE_SQL
|
||||||
from db.db_base import BaseDocument
|
from db.db_base import BaseDocument
|
||||||
from db.mongo.recipe_models import RecipeDocument
|
from db.mongo.recipe_models import RecipeDocument
|
||||||
from db.sql.db_session import create_session
|
from db.sql.db_session import create_session
|
||||||
from db.sql.recipe_models import RecipeModel
|
from db.sql.recipe_models import RecipeIngredient, RecipeModel
|
||||||
|
|
||||||
|
|
||||||
class _Recipes(BaseDocument):
|
class _Recipes(BaseDocument):
|
||||||
|
@ -49,16 +49,14 @@ class _Recipes(BaseDocument):
|
||||||
|
|
||||||
return new_data.get("slug")
|
return new_data.get("slug")
|
||||||
elif USE_SQL:
|
elif USE_SQL:
|
||||||
# data = self.save_new(new_data)
|
session, recipe = self._query_one(match_value=slug)
|
||||||
# session, recipe = self._query_one(match_value=slug)
|
recipe.update(session=session, **new_data)
|
||||||
session = self.create_session()
|
recipe_dict = recipe.dict()
|
||||||
session.merge((self.sql_model(**new_data)))
|
session.commit()
|
||||||
# recipe_dict = recipe.dict()
|
|
||||||
# session.commit()
|
|
||||||
|
|
||||||
session.close()
|
session.close()
|
||||||
|
|
||||||
return "string"
|
return recipe_dict
|
||||||
|
|
||||||
def update_image(self, slug: str, extension: str) -> None:
|
def update_image(self, slug: str, extension: str) -> None:
|
||||||
if USE_MONGO:
|
if USE_MONGO:
|
||||||
|
|
|
@ -87,26 +87,28 @@ class RecipeModel(SqlAlchemyBase):
|
||||||
image = sa.Column(sa.String)
|
image = sa.Column(sa.String)
|
||||||
recipeYield = sa.Column(sa.String)
|
recipeYield = sa.Column(sa.String)
|
||||||
recipeIngredient: List[RecipeIngredient] = orm.relationship(
|
recipeIngredient: List[RecipeIngredient] = orm.relationship(
|
||||||
"RecipeIngredient", cascade="all, delete", order_by="RecipeIngredient.position"
|
"RecipeIngredient", cascade="all, delete"
|
||||||
)
|
)
|
||||||
recipeInstructions: List[RecipeInstruction] = orm.relationship(
|
recipeInstructions: List[RecipeInstruction] = orm.relationship(
|
||||||
"RecipeInstruction",
|
"RecipeInstruction",
|
||||||
cascade="all, delete",
|
cascade="all, delete",
|
||||||
order_by="RecipeInstruction.position",
|
|
||||||
)
|
)
|
||||||
totalTime = sa.Column(sa.String)
|
totalTime = sa.Column(sa.String)
|
||||||
|
|
||||||
# Mealie Specific
|
# Mealie Specific
|
||||||
slug = sa.Column(sa.String, index=True, unique=True)
|
slug = sa.Column(sa.String, index=True, unique=True)
|
||||||
categories: List[Category] = orm.relationship(
|
categories: List[Category] = orm.relationship(
|
||||||
"Category", cascade="all, delete", order_by="Category.position"
|
"Category",
|
||||||
|
cascade="all, delete",
|
||||||
)
|
)
|
||||||
tags: List[Tag] = orm.relationship(
|
tags: List[Tag] = orm.relationship(
|
||||||
"Tag", cascade="all, delete", order_by="Tag.position"
|
"Tag",
|
||||||
|
cascade="all, delete",
|
||||||
)
|
)
|
||||||
dateAdded = sa.Column(sa.Date, default=date.today)
|
dateAdded = sa.Column(sa.Date, default=date.today)
|
||||||
notes: List[Note] = orm.relationship(
|
notes: List[Note] = orm.relationship(
|
||||||
"Note", cascade="all, delete", order_by="Note.position"
|
"Note",
|
||||||
|
cascade="all, delete",
|
||||||
)
|
)
|
||||||
rating = sa.Column(sa.Integer)
|
rating = sa.Column(sa.Integer)
|
||||||
orgURL = sa.Column(sa.String)
|
orgURL = sa.Column(sa.String)
|
||||||
|
@ -170,6 +172,7 @@ class RecipeModel(SqlAlchemyBase):
|
||||||
|
|
||||||
def update(
|
def update(
|
||||||
self,
|
self,
|
||||||
|
session,
|
||||||
name: str = None,
|
name: str = None,
|
||||||
description: str = None,
|
description: str = None,
|
||||||
image: str = None,
|
image: str = None,
|
||||||
|
@ -191,29 +194,34 @@ class RecipeModel(SqlAlchemyBase):
|
||||||
self.image = image
|
self.image = image
|
||||||
self.recipeYield = recipeYield
|
self.recipeYield = recipeYield
|
||||||
|
|
||||||
for ingr in recipeIngredient:
|
# Deleted Recipe Ingredeints
|
||||||
self.recipeIngredient
|
self.recipeIngredient = [
|
||||||
self.recipeIngredient = RecipeModel._update_list_str(
|
RecipeIngredient(ingredient=ingr) for ingr in recipeIngredient
|
||||||
recipeIngredient, self.recipeIngredient, RecipeIngredient
|
]
|
||||||
|
|
||||||
|
list_of_tables = [RecipeIngredient, RecipeInstruction, Category, Tag, ApiExtras]
|
||||||
|
|
||||||
|
for table in list_of_tables:
|
||||||
|
session.query(table).filter_by(parent_id=self.id).delete()
|
||||||
|
|
||||||
|
self.__init__(
|
||||||
|
name=name,
|
||||||
|
description=description,
|
||||||
|
image=image,
|
||||||
|
recipeYield=recipeYield,
|
||||||
|
recipeIngredient=recipeIngredient,
|
||||||
|
recipeInstructions=recipeInstructions,
|
||||||
|
totalTime=totalTime,
|
||||||
|
slug=slug,
|
||||||
|
categories=categories,
|
||||||
|
tags=tags,
|
||||||
|
dateAdded=dateAdded,
|
||||||
|
notes=notes,
|
||||||
|
rating=rating,
|
||||||
|
orgURL=orgURL,
|
||||||
|
extras=extras,
|
||||||
)
|
)
|
||||||
# self.recipeInstructions = recipeInstructions
|
|
||||||
|
|
||||||
# self.totalTime = totalTime
|
|
||||||
# self.slug = slug
|
|
||||||
# self.categories = categories
|
|
||||||
|
|
||||||
# for category in categories:
|
|
||||||
# if category in self.categories:
|
|
||||||
# pass
|
|
||||||
# else:
|
|
||||||
# self.categories.append(Category(name=category))
|
|
||||||
|
|
||||||
# self.tags = tags
|
|
||||||
# self.dateAdded = dateAdded
|
|
||||||
# self.notes = notes
|
|
||||||
# self.rating = rating
|
|
||||||
# self.orgURL = orgURL
|
|
||||||
# self.extras = extras
|
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _flatten_dict(list_of_dict: List[dict]):
|
def _flatten_dict(list_of_dict: List[dict]):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue