Go to file
Jan Klattenhoff 556d3cee7c feature: Gernerate Controller
Autogenerate Controller
2024-01-17 15:45:39 +01:00
.ddev feature: Add Printer Class 2024-01-17 15:06:46 +01:00
.idea feature: Add Printer Class 2024-01-17 15:06:46 +01:00
bin Add initial set of files 2024-01-17 13:36:10 +01:00
config feature: Add Printer Class 2024-01-17 15:06:46 +01:00
migrations feature: Add Printer Class 2024-01-17 15:06:46 +01:00
public Add initial set of files 2024-01-17 13:36:10 +01:00
src feature: Gernerate Controller 2024-01-17 15:45:39 +01:00
.env feature: Add Printer Class 2024-01-17 15:06:46 +01:00
.gitignore Add initial set of files 2024-01-17 13:36:10 +01:00
composer.json feature: Add Printer Class 2024-01-17 15:06:46 +01:00
composer.lock feature: Add Printer Class 2024-01-17 15:06:46 +01:00
README.md docs: Add README.md 2024-01-17 15:11:08 +01:00
symfony.lock feature: Add Printer Class 2024-01-17 15:06:46 +01:00

Create Read Update Delete Beschreibung Diese Übung dient dazu, dir das zusammenspiel von JavaScript und PHP näher zu bringen. Hierzu nutzen wir das Framework Symfony, über das wir per PHP eine REST API für eine Entität unserer Wahl definieren. Diese stellt Daten und Funktionen zur Entitätsverwaltung zur Verfügung. Diese beinhalten: Generieren, Bearbeiten und Löschen von Daten.

Aufgabe

  1. Überlege Dir eine Entität deiner Wahl (z.B. die Entität Produkt besitzt einen Namen, hat einen Preis und eine Beschreibung).
  2. Für diese Entität entwickelst du testgetrieben API Schnittstellen, die folgendes zur Verfügung stellen:
  • Ausgabe einzelner Entitäten
  • Ausgabe aller Entitäten
  • Bearbeiten einzelner Entitäten
  • Löschen einzelner Entitäten
  • Erstellen einzelner Entitäten
  1. Teste deine REST API zusätzlich manuell mit externen Programmen wie z.B. Postman o.ä.

  2. Definiere ein Template und binde dort JavaScript ein, welches Dir durch Abruf deiner selbst-entwickelten REST API die Daten deiner Entität in eine Tabelle ausgibt.

  3. Füge zu jedem Eintrag in der Tabelle Buttons hinzu, die den relevanten Eintrag per Overlay in einer Detailansicht anzeigen lassen. Das Overlay beinhaltet HTML und wird über den Rest der Seite geblendet. Hier bitte nicht das Javascript Alert oder ähnliches benutzen.

  4. Füge zu jedem Eintrag in der Tabelle Buttons hinzu, die den relevanten Eintrag per Overlay editierbar machen. Es öffnet sich in diesem Overlay ein Formular in dem alle Properties dieses Eintrages aufgelistet sind.

  5. Füge zu jedem Eintrag in der Tabelle Buttons hinzu, die den relevanten Eintrag löschen lassen. Implementiere hierzu eine Abfrage z.B. "Wollen Sie {Entität} wirklich löschen?"

  6. Füge außerhalb der Tabelle einen Button hinzu, der neue Entitäten generieren kann. Hierzu öffnet sich ein weiteres Overlay mit einem Formular zur Eingabe aller relevanten Daten.

  7. Für den Code müssen Unit- oder Functionaltests vorhanden sein.

Info: Bei jeder Datenänderung, wird die Seite nicht neu geladen. Die Daten werden nur per JavaScript aktualisiert!