User Tools

Site Tools


technical:db-design

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
technical:db-design [2013/09/03 10:44] – [Food, Recipies] martintechnical:db-design [2013/09/03 21:01] (current) – [Food, Recipies] martin
Line 6: Line 6:
  
 Foods und Recipies wiederum müssen unterschieden werden zwischen **bitwall- und User-Daten**. Bitwall-Daten werden mit der App mitgeliefert und manuell von den App-Produzenten gewartet. User-Daten sind davon unabhängig. Diese Aufteilung ist sinnvoll, da Updates der Bitwall-Daten die User-Daten nicht berühren dürfen. Foods und Recipies wiederum müssen unterschieden werden zwischen **bitwall- und User-Daten**. Bitwall-Daten werden mit der App mitgeliefert und manuell von den App-Produzenten gewartet. User-Daten sind davon unabhängig. Diese Aufteilung ist sinnvoll, da Updates der Bitwall-Daten die User-Daten nicht berühren dürfen.
 +
 +===== Units =====
 +==== Standard-Units ====
 +Die Standard-Units müssen mitgeführt werden, damit jedem Food/Recipe auch seine Standard-Unit zugeordnet werden muss:
 +
 +  * _id
 +  * title (Bezeichnung als String)
 +    * GRAM
 +    * MILLILITER
 +    * PORTION
 +==== Custom-Units ====
 +Ein Benutzer kann eigene Units anlegen. Diese Units beziehen sich immer direkt auf ein Food/Recipe.
 +
 +  * _id
 +  * title
 +  * food._id/recipe._id
 +  * amount
 +  * basicUnit._id
  
 ===== Food, Recipies ===== ===== Food, Recipies =====
   * bitwall:   * bitwall:
     * 1 Food-Tabelle     * 1 Food-Tabelle
 +      * _id
 +      * title
 +      * kcal
 +      * protein
 +      * carb
 +      * basicUnit._id
     * 1 Recipe-Tabelle     * 1 Recipe-Tabelle
 +      * _id
 +      * title
 +      * basicUnit._id
     * 1 Relation-Tabelle (n:m)     * 1 Relation-Tabelle (n:m)
-  * user:+      * _id 
 +      * recipe._id 
 +      * food._id 
 +  * user (analog zu bitwall-Tabellen):
     * 1 Food-Tabelle     * 1 Food-Tabelle
     * 1 Recipe-Tabelle     * 1 Recipe-Tabelle
Line 24: Line 54:
  
 So kann die komplette Tabelle food-/recipe-/relation-bitwall verändert werden, ohne dass die *-user-Tabellen angefasst werden. So kann die komplette Tabelle food-/recipe-/relation-bitwall verändert werden, ohne dass die *-user-Tabellen angefasst werden.
 +
 +===== Entries, Meals =====
 +  * 1 entry hat n meals
 +  * 1 meal hat 1-n foods oder recipes
 +    * hier handelt es sich um Kopien und keine Referenzen
 +    * **Fraglich:** Was wie kopieren? -> Redundanzen vermeiden!
technical/db-design.txt · Last modified: 2013/09/03 21:01 by martin