This commit is contained in:
Hayden
2020-12-24 16:37:38 -09:00
commit beed8576c2
137 changed files with 40218 additions and 0 deletions

24
mealie/db/meal_models.py Normal file
View File

@@ -0,0 +1,24 @@
import uuid
import mongoengine
class MealDocument(mongoengine.EmbeddedDocument):
slug = mongoengine.StringField()
name = mongoengine.StringField()
date = mongoengine.DateField()
dateText = mongoengine.StringField()
image = mongoengine.StringField()
description = mongoengine.StringField()
class MealPlanDocument(mongoengine.Document):
uid = mongoengine.UUIDField(default=uuid.uuid1)
startDate = mongoengine.DateField(required=True)
endDate = mongoengine.DateField(required=True)
meals = mongoengine.ListField(required=True)
meta = {
"db_alias": "core",
"collection": "meals",
}

16
mealie/db/mongo_setup.py Normal file
View File

@@ -0,0 +1,16 @@
import mongoengine
from settings import DB_HOST, DB_PASSWORD, DB_PORT, DB_USERNAME
def global_init():
mongoengine.register_connection(
alias="core",
name="demo_mealie",
host=DB_HOST,
port=int(DB_PORT),
username=DB_USERNAME,
password=DB_PASSWORD,
authentication_source="admin",
)

View File

@@ -0,0 +1,35 @@
import datetime
import uuid
import mongoengine
class RecipeDocument(mongoengine.Document):
# Standard Schema
# id = mongoengine.UUIDField(primary_key=True)
name = mongoengine.StringField(required=True)
description = mongoengine.StringField(required=True)
image = mongoengine.StringField(required=True)
recipeYield = mongoengine.StringField(required=True, default="")
recipeIngredient = mongoengine.ListField(required=True, default=[])
recipeInstructions = mongoengine.ListField(requiredd=True, default=[])
totalTime = mongoengine.StringField(required=False)
# Mealie Specific
slug = mongoengine.StringField(required=True, unique=True)
categories = mongoengine.ListField(default=[])
tags = mongoengine.ListField(default=[])
dateAdded = mongoengine.DateTimeField(binary=True, default=datetime.date.today())
notes = mongoengine.ListField(default=[])
rating = mongoengine.IntField(required=True, default=0)
orgURL = mongoengine.URLField(required=False)
extras = mongoengine.ListField(required=False)
meta = {
"db_alias": "core",
"collection": "recipes",
}
if __name__ == "__main__":
pass

View File

@@ -0,0 +1,37 @@
import mongoengine
class WebhooksDocument(mongoengine.EmbeddedDocument):
webhookURLs = mongoengine.ListField(required=False, default=[])
webhookTime = mongoengine.StringField(required=False, default="00:00")
enabled = mongoengine.BooleanField(required=False, default=False)
class SiteSettingsDocument(mongoengine.Document):
name = mongoengine.StringField(require=True, default="main", unique=True)
webhooks = mongoengine.EmbeddedDocumentField(WebhooksDocument, required=True)
meta = {
"db_alias": "core",
"collection": "settings",
}
class ThemeColorsDocument(mongoengine.EmbeddedDocument):
primary = mongoengine.StringField(require=True)
accent = mongoengine.StringField(require=True)
secondary = mongoengine.StringField(require=True)
success = mongoengine.StringField(require=True)
info = mongoengine.StringField(require=True)
warning = mongoengine.StringField(require=True)
error = mongoengine.StringField(require=True)
class SiteThemeDocument(mongoengine.Document):
name = mongoengine.StringField(require=True, unique=True)
colors = mongoengine.EmbeddedDocumentField(ThemeColorsDocument, required=True)
meta = {
"db_alias": "core",
"collection": "themes",
}

7
mealie/db/user_models.py Normal file
View File

@@ -0,0 +1,7 @@
import datetime
import mongoengine
class User(mongoengine.Document):
username: mongoengine.EmailField()
# password: mongoengine.ReferenceField