update the documentation
This commit is contained in:
parent
199bd4f3f0
commit
3f7cc92fc1
|
@ -271,7 +271,9 @@ LaTeX ist freie Software unter der LaTeX Project Public License.
|
||||||
|
|
||||||
Die Grafiken in diesem Dokument wurden hauptächlich mit dem Vektor
|
Die Grafiken in diesem Dokument wurden hauptächlich mit dem Vektor
|
||||||
Grafik Editor Inkscape\footcite{inkscape} erstellt. Inkscape ist freie
|
Grafik Editor Inkscape\footcite{inkscape} erstellt. Inkscape ist freie
|
||||||
Software unter der GNU Public License v3.
|
Software unter der GNU Public License v3. Für das Entity Relation
|
||||||
|
Diagramm in [[Models]] haben wir jedoch Dia\footcite{dia} verwendet. Dia
|
||||||
|
ist freie Software unter der GNU Public License v2.
|
||||||
|
|
||||||
Die Klassen Diagramme haben wir mit der Django Erweiterung
|
Die Klassen Diagramme haben wir mit der Django Erweiterung
|
||||||
"Django-Extensions"\footcite{django_extensions} erstellt.
|
"Django-Extensions"\footcite{django_extensions} erstellt.
|
||||||
|
@ -997,9 +999,14 @@ aus, die Use Cases mit den Nummern wurden dabei im Detail ausgearbeitet:
|
||||||
*** TODO Models
|
*** TODO Models
|
||||||
|
|
||||||
Wie bereits in [[Framework]] beschrieben übernimmt das Framework die
|
Wie bereits in [[Framework]] beschrieben übernimmt das Framework die
|
||||||
Erstellung der Tabellen in der Datenbank. Zu Begin der Arbeit waren
|
Erstellung der Tabellen in der Datenbank. Für den Aufbau der Anwendung
|
||||||
wir uns desen noch nicht ganz bewusst. Weshalb wir zuerst ein
|
und der Kommunikation im Team ist es jedoch von absoluter
|
||||||
klassisches Entity Relation Diagramm, zu sehen in Abbildung:([[fig:erd]])
|
Notwendigkeit das man sich über die Beziehung zwischen den Objekten
|
||||||
|
Gedanken macht. Insbesondere wenn die Anwendung nach wie vor auf einer
|
||||||
|
relationalen Datenbank basiert. Aus diesem Grund haben wir vor Beginn
|
||||||
|
der Arbeit ein klassisches Entity Relation Diagramm aufgezeichnet.
|
||||||
|
Während der Entwicklung haben wir es dann kontinuierlich erweitert und
|
||||||
|
korrigiert. Das finale Ergebnis ist in der Abbildung:([[fig:erd]]) zu sehen.
|
||||||
erstellt haben.
|
erstellt haben.
|
||||||
|
|
||||||
#+LATEX:\newpage
|
#+LATEX:\newpage
|
||||||
|
@ -1011,27 +1018,22 @@ erstellt haben.
|
||||||
#+LATEX:\end{landscape}
|
#+LATEX:\end{landscape}
|
||||||
#+LATEX:\newpage
|
#+LATEX:\newpage
|
||||||
|
|
||||||
Als wir dann lernten wie Django konkret funktioniert war das ERD nur
|
Django übernimmt dann jedoch das erstellen der Tabellen und benennen
|
||||||
noch bedingt von Nutzen. In den groben Zügen diente es uns jedoch für
|
derjenigen weshalb das Resultat in der Datenbank dann etwas anders
|
||||||
den Grund Aufbau der Modells. Der finalle Aufbau ist in der
|
aussieht. Zusätzlich kommt Django auch noch mit eigenen Tabellen
|
||||||
Abbildung:([[fig:final_erd]]) zu sehen. Dieses Entity Relation Diagramm
|
daher. Der finale Aufbau der Datenbank ist in der
|
||||||
wurde mithilfe der Django Applikation
|
Abbildung:([[fig:final_erd]]) zu sehen. Dieses ERD wurde mit der Django
|
||||||
"Djangoextensions"\footcite{djangoextensions} erstellt.
|
Erweiterung "Djangoextensions"\footcite{djangoextensions} erstellt.
|
||||||
|
|
||||||
#+LATEX:\newpage
|
#+LATEX:\newpage
|
||||||
#+LATEX:\begin{landscape}
|
#+LATEX:\begin{landscape}
|
||||||
#+ATTR_LATEX: :height.9\textheight
|
#+ATTR_LATEX: :height.9\textheight
|
||||||
#+CAPTION: Entity Relation Diagramm
|
#+CAPTION: Django Datenbank Aufbau
|
||||||
#+NAME: fig:final_erd
|
#+NAME: fig:final_erd
|
||||||
[[file:diagrammes/final_erd.png]]
|
[[file:diagrammes/final_erd.png]]
|
||||||
#+LATEX:\end{landscape}
|
#+LATEX:\end{landscape}
|
||||||
#+LATEX:\newpage
|
#+LATEX:\newpage
|
||||||
|
|
||||||
Der Hauptgrund warum wir das finalle ERD durch Django haben generieren
|
|
||||||
lassen ist das Django bereits mit diversen Modells und somit Tabellen
|
|
||||||
daher kommt. Zum Teil auch solche wir zuvor selbst geplant hatten und unser ERD
|
|
||||||
somit nicht mehr wirklich akkurat war.
|
|
||||||
|
|
||||||
Nachfolgend werden wir die von uns erstellten Modells im Detail
|
Nachfolgend werden wir die von uns erstellten Modells im Detail
|
||||||
beschreiben und auf jeweils spezifische Probleme eingehen.
|
beschreiben und auf jeweils spezifische Probleme eingehen.
|
||||||
|
|
||||||
|
@ -1107,10 +1109,7 @@ anderen Währung zurückrechnen.
|
||||||
#+NAME: fig:exchangerate
|
#+NAME: fig:exchangerate
|
||||||
[[./pictures/class_exchangerate.png]]
|
[[./pictures/class_exchangerate.png]]
|
||||||
|
|
||||||
**** NEXT ExchangeRate_name
|
**** ExchangeRate_name
|
||||||
|
|
||||||
- Note taken on [2018-02-01 Don 21:08] \\
|
|
||||||
Bild hinterlegen.
|
|
||||||
|
|
||||||
Im Modell ExchangeRate_name, Abbildung:([[fig:exchangerate_name]]), ist nur
|
Im Modell ExchangeRate_name, Abbildung:([[fig:exchangerate_name]]), ist nur
|
||||||
eine Liste mit allen möglichen Währungsnamen abgelegt.
|
eine Liste mit allen möglichen Währungsnamen abgelegt.
|
||||||
|
@ -1118,11 +1117,9 @@ eine Liste mit allen möglichen Währungsnamen abgelegt.
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Wechselkurse
|
#+CAPTION: Klassenmodel für Wechselkurse
|
||||||
#+NAME: fig:exchangerate_name
|
#+NAME: fig:exchangerate_name
|
||||||
|
[[file:pictures/exchangerate_name.png]]
|
||||||
|
|
||||||
**** NEXT ExchangeRate_date
|
**** ExchangeRate_date
|
||||||
|
|
||||||
- Note taken on [2018-02-01 Don 21:08] \\
|
|
||||||
Bild hinterlegen.
|
|
||||||
|
|
||||||
Damit die Wechselkurse des Tages einfacher auf einer Zeile angezeigt
|
Damit die Wechselkurse des Tages einfacher auf einer Zeile angezeigt
|
||||||
werden können haben wir das Datum in ein eigenes Modell,
|
werden können haben wir das Datum in ein eigenes Modell,
|
||||||
|
@ -1138,6 +1135,7 @@ Erstellen des Objekt evaluiert wird.
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Wechselkurse
|
#+CAPTION: Klassenmodel für Wechselkurse
|
||||||
#+NAME: fig:exchangerate_date
|
#+NAME: fig:exchangerate_date
|
||||||
|
[[file:pictures/exchangerate_date.png]]
|
||||||
|
|
||||||
**** Article
|
**** Article
|
||||||
|
|
||||||
|
@ -1164,36 +1162,67 @@ Status angedacht:
|
||||||
- cancelled -> Bestellung storniert
|
- cancelled -> Bestellung storniert
|
||||||
- on hold -> Bestellung pausiert
|
- on hold -> Bestellung pausiert
|
||||||
|
|
||||||
|
Der "OrderStatus" wird vom "Order" sowie auch dem "OrderOfGoods" Modell
|
||||||
|
verwendet.
|
||||||
|
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Bestellstatus
|
#+CAPTION: Klassenmodel für Bestellstatus
|
||||||
#+NAME: fig:orderstatus
|
#+NAME: fig:orderstatus
|
||||||
[[./pictures/class_orderstatus.png]]
|
[[./pictures/class_orderstatus.png]]
|
||||||
|
|
||||||
**** NEXT OrderOfGoods
|
**** OrderOfGoods
|
||||||
|
|
||||||
|
Das Modell "OrderOfGoods", Abbildung:([[fig:orderofgoods]]), bildet die
|
||||||
|
Nachbestellungen fürs Warenlager ab. Dabei wird es hauptsächlich für
|
||||||
|
die Verwaltung verwendet um die Nachbestellungen im Griff zu haben.
|
||||||
|
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Warenbestellungen
|
#+CAPTION: Klassenmodel für Warenbestellungen
|
||||||
#+NAME: fig:orderofgoods
|
#+NAME: fig:orderofgoods
|
||||||
[[./pictures/class_orderofgoods.png]]
|
[[./pictures/class_orderofgoods.png]]
|
||||||
|
|
||||||
**** NEXT Picture
|
**** Picture
|
||||||
|
|
||||||
\footcite{upload}
|
Über das Modell "Picture", Abbildung:([[fig:picture]]) können Bilder für
|
||||||
\footcite{images}
|
einen Artikel hochgeladen werden. Grundsätzlich kann man Bilder
|
||||||
|
relativ einfach über das Attribut "models.ImageField" zu einem Modell
|
||||||
|
hinzufügen. Wir hatten allerdings noch einige Probleme mit dem
|
||||||
|
Konfigurieren von Django damit der Upload funktionierte und wir die
|
||||||
|
Bilder in den Templates verwenden konnten. Die Lösungen für den Upload
|
||||||
|
fanden wir in einem Stackoverflow Post\footcite{upload}. Auch für das
|
||||||
|
verwenden der Bilder in den Templates fanden wir in einem Post auf
|
||||||
|
Stackoverflow\footcite{images} die Lösung.
|
||||||
|
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Bilder
|
#+CAPTION: Klassenmodel für Bilder
|
||||||
#+NAME: fig:picture
|
#+NAME: fig:picture
|
||||||
[[./pictures/class_picture.png]]
|
[[./pictures/class_picture.png]]
|
||||||
|
|
||||||
**** NEXT Order
|
**** Order und OrderPosition
|
||||||
|
|
||||||
|
Bestellungen der Kunden werden im Modell "Order",
|
||||||
|
Abbildung:([[fig:order]]), erfasst. Wobei im Modell Order nur die Kunden
|
||||||
|
ID gespeichert wird. Da sich bei der Beziehung zwischen den Artikeln
|
||||||
|
und dem Kunden um eine "Viele zu Viele" Beziehung handelt braucht es
|
||||||
|
noch ein zusätzliches Modell welches die Beziehung abbildet. Dies
|
||||||
|
realisieren wir über das Modell "OrderPostion",
|
||||||
|
Abbildung:([[fig:orderposition]]).
|
||||||
|
|
||||||
|
In diesem Modell werden dann noch zusätzlich die bestellte Menge sowie
|
||||||
|
der Preis zur Zeit der Bestellung erfasst. Somit kann auch später noch
|
||||||
|
nachvollzogen werden zu welchem Preis die Ware bezogen wurde.
|
||||||
|
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Bestellungen
|
#+CAPTION: Klassenmodel für Bestellungen
|
||||||
#+NAME: fig:order
|
#+NAME: fig:order
|
||||||
[[./pictures/class_order.png]]
|
[[./pictures/class_order.png]]
|
||||||
|
|
||||||
**** NEXT ShoppingCart
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
|
#+CAPTION: Klassenmodel für Bestellungens Positionen
|
||||||
|
#+NAME: fig:orderposition
|
||||||
|
[[file:pictures/class_orderposition.png]]
|
||||||
|
|
||||||
|
**** ShoppingCart und ShoppingCartPosition
|
||||||
|
|
||||||
#+ATTR_LATEX: :width 9cm :placement [H]
|
#+ATTR_LATEX: :width 9cm :placement [H]
|
||||||
#+CAPTION: Klassenmodel für Warenkörbe
|
#+CAPTION: Klassenmodel für Warenkörbe
|
||||||
|
|
Loading…
Reference in New Issue