Challenge 1: Lege ein Projekt an

Das waren jetzt einige Dinge, die wir besprochen haben. Um das Erlernte auch gleich anzuwenden, wartet jetzt eine Challenge auf dich!

Neues Projekt Company

Dein Kunde benötigt eine kleine Firmenverwaltung, die du natürlich mit Django umsetzen wirst. Es sollen Firmen und deren Angestellte in einer Django-App verwaltet werden können.

Dazu muss erstmal ein neues Projekt (company_project) angelegt werden.

Später müssen die Models erstellt und die Migrationen durchgeführt werden. Das User-Model wollen wir ebenfalls nicht vergessen.

Auf Views und URLs verzichten wir im Moment. Das User-Model werden wir auch nicht weiter nutzen.

Projekt erstellen

Lege ein neues Django-Projekt namens company_manager an, wie wir das im ersten Kapitel gesehen haben. Nutze das Programm django-admin und das Subkommando startproject.

Lege dazu auch ein neues virtuelles Environment an und installiere die nötigen Pakete. Die Settings müssen auch angepasst werden.

Prüfe, ob der Runserver startet und die Django-Rakete im Browser angezeigt wird.

Die App anlegen

Wenn das Django-Projekt erfolgreich angelegt wurde, lege jetzt eine neue App names company an. Nutze das das Subkommando startapp.

Die Models anlegen

Wir benötigen in der App zwei Modelle: Das Model Company sowie das Model Employee. Der Employee ist mit der Company über eine ForeignKey-Beziehung verknüpft, es handelt sich also um eine 1:N Beziehung. Jede Firma hat N Angestellte, und jeder Angestellte ist genau einer Firma zugeordnet.

Die Company besitzt die Felder:

  • name

  • description

  • company_type

Der Employee besitzt folgende Felder:

  • firstname

  • lastname

  • age

  • company (ForeignKey)

Erstelle die beiden Models und wähle dazu die passenden Feldtypen aus. Das Alter zum Beispiel sollte kein CharField sein. Verhindere, das die Employees gelöscht werden, wenn die Firma gelöscht wird, der sie zugeteilt sind (on_delete).

Migrationen durchführen

Wenn die Models erstellt wurden, führe die Migrationen aus. Nutze dazu die Subkommandos makemigrations und migrate.

Und jetzt: Viel Erfolg! Wie das Ergebnis aussehen könnte, findest du unter diesem Link: https://realdcaptaiadj.aaadfa.ge