Closed alexanderschmitz closed 7 months ago
Dem stimme ich zu. Lieber explizit. @alexanderschmitz Kannst du bitte das im Rahmen dieses PR gleich ändern?
Weil der Fehler doch ziemlich leicht zu übersehen ist (Zumal das korrekte FormModel ja an 2 Stellen angegeben werden muss) frage ich mich, ob wir vielleicht immer ein explizit angegebenes FormModel verlangen sollten, statt das leere als Default zu nehmen. 🤔
81b61246ca39d9ae2d2d73173cbc6e14b762e1c4 löst das Problem indem zur Laufzeit ein Fehler geschmissen wird. Ich denke das ist die Lösung mit den geringsten Änderungen.
Weil der Fehler doch ziemlich leicht zu übersehen ist (Zumal das korrekte FormModel ja an 2 Stellen angegeben werden muss) frage ich mich, ob wir vielleicht immer ein explizit angegebenes FormModel verlangen sollten, statt das leere als Default zu nehmen. 🤔
81b6124 löst das Problem indem zur Laufzeit ein Fehler geschmissen wird. Ich denke das ist die Lösung mit den geringsten Änderungen.
Guter Ansatz. Zusätzlich fände ich es noch gut, in QuestionType.__init_subclass__
zu prüfen, dass der question state und der question type auch tatsächlich die selbe FormModel-Klasse verwenden. Das ließe sich über __pydantic_generic_metadata__
machen. Was hälst du davon?
Die Probleme, die beim Parsen der
form_data
auftraten (Es wurde immer ein leeres dict zurückgegeben) kamen daher, dass in derExampleQuestion
ein generisches FormModel genommen wurde anstatt desMyModel
.basiert auf #61