34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
# forms.py
|
|
|
|
from django import forms
|
|
from .models import Gericht
|
|
# Importiere alle Modelle, die für das Formular relevant sind
|
|
from .models import Kategorie
|
|
|
|
class GerichtForm(forms.ModelForm):
|
|
"""Definiert die Struktur und Validierungsregeln für das Gericht-Modell."""
|
|
|
|
class Meta:
|
|
model = Gericht
|
|
fields = [
|
|
'name',
|
|
'kategorie',
|
|
'preis',
|
|
'ist_vegetarisch',
|
|
'ist_allergene_frei',
|
|
'allergene',
|
|
'beschreibung', # Neues Feld für Zutaten/Rohstoffe
|
|
'bilder', # Das Bild-Feld
|
|
'ist_dauerangebot'
|
|
]
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
super().__init__(*args, **kwargs)
|
|
# Wir können hier zusätzliche Validierungen oder Widgets einbinden
|
|
# Beispiel: Erzwinge das Betreten der Kategorie-Auswahl
|
|
self.fields['kategorie'].required = True
|
|
|
|
# Hier könntest du auch einen Fallback für den Preis hinzufügen, falls er nicht gesetzt ist
|
|
if 'initial' in kwargs: # Wird bei GET-Requests genutzt
|
|
self.initial['preis'] = 0.00
|