Code: Alles auswählen
#Dict zum Zuordnen der kategorie.zeile zu den einzelnen Aufgaben:
AUFGABEN = {
1: addieren, 2: subtrahieren, 3: verdoppeln, 4: halbieren, 5: einmaleins, 6: kopfrechnen, 7: sachaufgaben, 8: zahlen, 9: malget10, 10: runden,
11: regeln, 12: geometrie, 13: einheiten, 14: figuren, 15: kommazahlen, 16: zuordnungen}
Code: Alles auswählen
path('<slug:slug>/', views.main, name='main')
Innerhalb von "main" ruft die Codezeile:
Code: Alles auswählen
typ, typ2, titel, text, pro_text, frage, variable, einheit, anmerkung, lsg, hilfe_id, ergebnis, parameter = aufgaben(kategorie.zeile, jg = user.jg, stufe = user.stufe, aufgnr = zaehler.aufgnr, typ_anf = typ_anf, typ_end = zaehler.typ_end, optionen = "")
Code: Alles auswählen
def aufgaben(kategorie_id, jg = 5, stufe = 3, aufgnr = 0, typ_anf = 0, typ_end = 0, typ = 0, typ2 = 0, optionen = "", eingabe = "", lsg = ""):
return AUFGABEN[kategorie_id](jg, stufe, aufgnr, typ_anf, typ_end, typ, typ2, optionen, eingabe, lsg)
und von da aus wird dann z.B. die Funktion "addieren" aufgerufen:
Code: Alles auswählen
def addieren(jg = 5, stufe = 3, aufgnr = 0, typ_anf = 0, typ_end = 0, typ = 0, typ2 = 0, optionen = "", eingabe = "", lsg = ""):
(Hoffentlich habe ich das gut genug erklärt )