Go to file
2024-01-18 11:13:56 +01:00
.ddev endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
.idea endofday: 17.01.2024 2024-01-17 17:17:12 +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 endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
public Add initial set of files 2024-01-17 13:36:10 +01:00
src test: added tests 2024-01-18 11:13:56 +01:00
tests endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
.env feature: Add Printer Class 2024-01-17 15:06:46 +01:00
.env.test endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
.gitignore endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
composer.json endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
composer.lock endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
phpunit.xml.dist endofday: 17.01.2024 2024-01-17 17:17:12 +01:00
README.md docs: Add README.md 2024-01-17 15:11:08 +01:00
symfony.lock endofday: 17.01.2024 2024-01-17 17:17:12 +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!