Backomania-Webapp-DB-Bilder: Difference between revisions

From Elch-Wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Konzeptuelle Überlegungen ==
== Konzeptuelle Überlegungen ==
* Sprach-Konvention: unit ::= Rezept | Teilrezept | Step | Zutat | User
* Sprach-Konvention: unit ::= Rezept | Teilrezept | Step | Zutat | User
* Eine unit kann beliebig viele Bilder enthalten
* Eine unit kann 0..n Bilder enthalten
* Ein Bild kann in 0..m units verwendet werden
* Die Reihenfolge der Bilder in einer unit ist relevant
* Die Reihenfolge der Bilder in einer unit ist relevant
* Ein Bild kann in mehreren units verwendet werden
* Jeder User kann seine Bilder beliebig in Verzeichnissen ordnen
* Jeder User kann seine Bilder beliebig in Verzeichnissen ordnen
 
Ergo: Bilder stehen zu units in einer n:m Beziehung, es braucht eine Zwischentabelle.


=== Tabelle "bilder" ===
=== Tabelle "bilder" ===
* id (der physikalische Name im Filesystem wird aus der id gebildet!)
* id (der physikalische Name im Filesystem wird aus der id gebildet!)
* user (der das Bild raufgeladen hat)
* user (der das Bild raufgeladen hat)
* extension (.jpg, .png oder .gif)
* pfad_id
* pfad_id
* pfad_position
* pfad_position
Line 16: Line 17:
* t_create, t_update
* t_create, t_update


=== Tabelle "pfade" ===
=== Tabelle "bilder_pfade" ===
* id
* id
* user (dem dieser Eintrag gehört)
* user (dem dieser Eintrag gehört)
* name
* name
* public (sind die Bilder in diesem Pfad öffentlich?)
* public (wird dieser Pfad und die darin enthaltenen Bilder im User-Profil angezeigt?)
* t_create, t_update
* t_create, t_update


== Verbindung von Bildern und units ==
=== Tabelle "bilder_units" ===
Bilder haben zu units eine n:m Beziehung:
* unit (1=Rezept, 2=Teilrezept, 3=Step, 4=Zutat, 5=User, ...)
* Ein Bild kann in 0..n units verwendet werden
* id_unit (in der gewählten Unit, welche id?)
* Eine unit kann 0..m Bilder haben
* unit_position
Ergo braucht es eine Zwischentabelle.
* id_bild (welches Bild?)
 
=== Tabelle bilder_units ===
* id_unit
* unit
* id_bild
 
 
- Tabellen Rezept/Teilrezept/Step/Zutat/User müssen geändert werden, so dass eine Liste von Bildern "lop" (List of Pictures, analog zum los / List of Steps) geführt werden kann.
Beim Anzeigen können dann die Bilder einer unit mit gleichem Pfad gruppiert werden. Dies sollte genügend Flexibilität geben.
- In den unit-Tabellen wir eine Liste von Pfaden

Latest revision as of 17:42, 14 April 2008

Konzeptuelle Überlegungen

  • Sprach-Konvention: unit ::= Rezept | Teilrezept | Step | Zutat | User
  • Eine unit kann 0..n Bilder enthalten
  • Ein Bild kann in 0..m units verwendet werden
  • Die Reihenfolge der Bilder in einer unit ist relevant
  • Jeder User kann seine Bilder beliebig in Verzeichnissen ordnen

Ergo: Bilder stehen zu units in einer n:m Beziehung, es braucht eine Zwischentabelle.

Tabelle "bilder"

  • id (der physikalische Name im Filesystem wird aus der id gebildet!)
  • user (der das Bild raufgeladen hat)
  • extension (.jpg, .png oder .gif)
  • pfad_id
  • pfad_position
  • bemerkung (Text zum Bild)
  • approved (Flag ob das Bild freigegeben ist)
  • t_create, t_update

Tabelle "bilder_pfade"

  • id
  • user (dem dieser Eintrag gehört)
  • name
  • public (wird dieser Pfad und die darin enthaltenen Bilder im User-Profil angezeigt?)
  • t_create, t_update

Tabelle "bilder_units"

  • unit (1=Rezept, 2=Teilrezept, 3=Step, 4=Zutat, 5=User, ...)
  • id_unit (in der gewählten Unit, welche id?)
  • unit_position
  • id_bild (welches Bild?)