Update Readme, first DB data and migration

This commit is contained in:
2026-05-07 20:24:33 +02:00
parent f2f00848f2
commit a9afaff671
2 changed files with 111 additions and 1 deletions

110
README.md
View File

@@ -1,3 +1,113 @@
# SGTMensa # SGTMensa
MensaApp für die Schulmensa am SGT MensaApp für die Schulmensa am SGT
Muster-Implementation durch die Lehrkraft in python3 mit Django
## To get started
```bash
cd SGTMensa
python3 -m venv venv
source venv/bin/activate
pip install django
django-admin startproject mensa-core .
```
### Schritt 1: Die Arbeitsumgebung isolieren (Virtual Environment)
Bevor du auch nur eine Zeile Code schreibst, erstelle eine eigene Umgebung. Das verhindert, dass sich verschiedene Projekte auf deinem Rechner gegenseitig stören.
1. **Ordner erstellen:** `mkdir mensa_projekt` -> `cd mensa_projekt`
2. Virtuelle Umgebung erstellen:
- Windows: `python -m venv venv`
- Mac/Linux: `python3 -m venv venv`
3. Aktivieren:
- Windows: `venv\Scripts\activate`
- Mac/Linux: `source venv/bin/activate`
*Jetzt siehst du ein `(venv)` vor deiner Kommandozeile. Dein System ist nun "sauber".*
### Schritt 2: Das Fundament legen (Installation)
Installiere nur das Nötigste. Für den Start reicht Django.
```bash
pip install django
```
### Schritt 3: Das Projekt initialisieren
Erstelle die Struktur eines Django-Projekts.
```bash
django-admin startproject mensa_core .
python manage.py startapp mensa_app
```
*Hinweis: Der Punkt `.` am Ende von `startproject` sorgt dafür, dass die Dateien im aktuellen Ordner erstellt werden und nicht ein Unterordner entsteht.*
### Schritt 4: Die App registrieren
Damit Django weiß, dass deine neue App `mensa_app` existiert, musst du sie in der Datei `mensa_core/settings.py` unter `INSTALLED_APPS` hinzufügen:
```python
INSTALLED_APPS = [
...
'mensa_app',
]
```
### Schritt 5: Die Modelle implementieren
Jetzt kopierst du den Code für deine Klassen (aus unserer vorherigen Diskussion) in die Datei `mensa_app/models.py`.
### Schritt 6: Die Datenbank "erwecken" (Migrations)
Da du gerade Modelle definiert hast, muss die Datenbank (standardmäßig SQLite, was perfekt für Tests ist) diese Strukturen lernen.
```bash
python manage.py makemigrations mensa_app
python manage.py migrate
```
### Schritt 7: Der "Geheimweg" Das Admin-Interface nutzen
Das ist der Clou an Django! Du musst noch keine eigenen Webseiten (HTML) programmieren, um Daten einzugeben. Django liefert ein fertiges Interface mit.
1. **Admin-User erstellen:**
```bash
python manage.py createsuperuser
```
(Folge den Anweisungen: Name, Email, Passwort das Passwort wird beim Tippen nicht angezeigt!)
2. **Modelle im Admin registrieren:**
Gehe in `mensa_app/admin.py` und schreibe:
```bash
1. from django.contrib import admin
from .models import DeinModellName # Ersetze dies durch deine echten Klassennamen
admin.site.register(DeinModellName)
```
### Schritt 8: Den Server starten
Jetzt kommt der magische Moment:
```bash
python manage.py runserver
```
Öffne deinen Browser unter `http://127.0.0.1:8000/admin`. Logge dich mit deinem Superuser ein. **Herzlichen Glückwunsch!** Du hast eine voll funktionsfähige Web-Anwendung, mit der du bereits Speisepläne und Bestellungen in einer Datenbank verwalten kannst.

Binary file not shown.