Update Readme, first DB data and migration
This commit is contained in:
110
README.md
110
README.md
@@ -1,3 +1,113 @@
|
||||
# SGTMensa
|
||||
|
||||
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.
|
||||
BIN
db.sqlite3
BIN
db.sqlite3
Binary file not shown.
Reference in New Issue
Block a user