SoSe 2025
ssh, Arbeiten mit ~/wwwapp.py, templates/index.html, static/@app.route()venv und Paketverwaltung mit pip
🔍 Moderne Einsatzbereiche:
/home/isa##
├── .ssh/ # SSH-Zugang (public key)
├── www/ # Statische Landing Page / Ihre Homepage / hat NICHTS mit der Flask-App zu tun!
│ ├── index.html
│ ├── unterseiten.html
│ ├── css/
│ │ └── style.css
│ ├── js/
│ │ └── script.js
│ └── img/
│
├── flask_app/ # Flask-Anwendung
│ ├── app.py # Haupt-Logik -> erreichbar unter spez. Port (isa#.edumake.de:8022)
│ ├── venv/ # Virtuelle Umgebung
│ ├── templates/ # HTML-Seiten mit Variablen & Logik
│ │ ├── index.html # Startseite der Flask-App
│ │ └── raetsel.html # Formularseite für ein Rätsel
│ └── static/ # CSS, JS, Bilder für Flask
│ └── assets/ # CSS, JS, Bilder für Flask
│ ├── style.css
│ ├── script.js
│ └── img/
│ └── bild1.png
✅ Trennung von statischer Seite (www/) und interaktiver Flask-App (flask_app/) sorgt für Übersicht.
❓ Wo gab es weitere Schwierigkeiten?
https://isa17.edumake.de.~/www.{{ }}, Schleifen, Bedingungen).Ziel: Jede Gruppe bringt ihre eigene Flask-Anwendung online, sodass ein zusammenhängendes Escape Game entsteht!
ssh benutzername@edumake.depwd, ls -a, tree -L 2nano ~/flask_app/app.pycd ~/flask_app → source venv/bin/activatepython3 app.pyhttp://isa#.edumake.de:80##✅ Erst wenn alle Gruppen erfolgreich online sind, ist das Spiel vollständig!
In modernen Softwaresystemen sind Datenbanken unverzichtbar für die dauerhafte, strukturierte und sichere Speicherung von Informationen. Sie bilden das Rückgrat vieler Anwendungen – von Webshops über Spiele bis hin zu Verwaltungs- und Buchungssystemen.
Datenbanken bilden Strukturen und Sachverhalte aus der realen Welt in klar definierter, digitaler Form nach. Sie erfassen das, was in der Wirklichkeit vorkommt, in Form von Tabellen, Einträgen und Eigenschaften.
📌 Beispiele:
Benutzer-TabelleMedien-TabelleSobald Daten dauerhaft gespeichert und später wieder gezielt abgerufen werden sollen, erfolgt das in modernen Softwaresystemen meist über eine Datenbank.
📌 Fazit: SQL ist ideal für stabile, verknüpfte Daten – NoSQL für dynamische, flexible Systeme.
SQL steht für Structured Query Language und ist die Standardsprache zur Arbeit mit relationalen Datenbanken. Sie ermöglicht es, Daten abzufragen, zu speichern, zu verändern und zu löschen – in einem klaren, tabellenbasierten System.
📌 SQL ist deklarativ – man beschreibt, was man will, nicht wie es intern passiert.
Ziel dieser Veranstaltung ist nicht, dass Sie SQL vollständig beherrschen. Vielmehr sollen Sie die grundlegende Funktionsweise von Datenbanken in modernen Softwaresystemen verstehen – und exemplarisch erleben, wie sich eine einfache Datenbank mit Flask verknüpfen lässt.
SELECT, WHERE)
KursNr in der Personentabelle ist ein FremdschlüsselKursNr in der Kurstabelle
In dieser Aufgabe sollen Ihre Rätsel nicht mehr im Code hartkodiert sein, sondern dynamisch aus einer eigenen MariaDB-Datenbank geladen werden. So können Sie später einfach neue Inhalte hinzufügen, ohne die Anwendung anpassen zu müssen.
CREATE TABLEINSERT INTO einfügenapp.py einfügen (Benutzer, Passwort, DB)