digiwf-core
digiwf-core copied to clipboard
Checkbox Validierung im Backenend funktioniert nicht
Describe the bug Im Backend erfolgt keine Validierung der Checkboxen. Ist eine Checkbox ein Pflichtfeld und wird nicht bestätigt gilt das Formular im Backend als valide. Datumsfelder werden im Backend auch nicht richtig valildiert. Können auch leer gelassen werden, obwohl sie Pflichtfleder sind.
To Reproduce Steps to reproduce the behavior:
- Example Grouptask starten
- Textfeld befüllen
- Task speichern
- Task wird gespeichert obwohl die Checkbox nicht angehakt ist
Expected behavior Validierung im Backend sollte wie gewünscht funktionieren. Hier sollten wir uns nochmal abstimmen.
👋 Thanks for reporting! The maintainers have been notified and will get back to you.
Das müssten wir wahrscheinlich nochmal diskutieren.
Was mir gerade einfällt, dass required hier vom Backend wahrscheinlich als Validierung != null funktioniert, was technisch gesehen ja korrekt ist.
Im Backend erfolgt keine Validierung der Checkboxen. Ist eine Checkbox ein Pflichtfeld und wird nicht bestätigt gilt das Formular im Backend als valide.
Ist hier ein Default vergeben oder wird es angehakt und dann wieder abgehakt? Required bezieht sich auf Null und damit ist false ein valider Wert. Es wird aber mit null initialisiert, oder? So müsste die Checkbox ohne Veränderung und Default zum Validierungsfehler führen. Wenn man nur True zulassen möchte, muss eine andere Validierung verwendet werden.
Für mich ist die Frage, ob wir hier das Rquired rausnehmen und durch eine neue Regel ersetzen.
Haupt-Problem ist glaube, dass für den Browser required auf einer Checkbox == true bedeutet und das damit inkonsistent ist.
@lehju Gibt es einen Grund, warum das direkt in den Sprint reingezogen ist?
Die Inkonsistenz fällt nur bei direkter Nutzung der API auf
Das Issue mit den Aktionshinweisen hängt von dem Bug ab, da wir die Backend Validierung für die barrierefreien Mitteilungnen brauchen.
Ich habe das gerade ausprobiert. Wenn ich eine Checkbox als required einfüge und Abschicke, ohne dass es abgehakt ist, dann schickt die UI gar keinen Request, Inwiefern ist dies dann relevant🤔
Wir haben bei den barrierefreien Mitteilungen die Frontend Validierung herausgenommen, da sonst beim Abschicken für jedes fehlerhafte Feld die Benachrichtigung vorgelesen wird. So wird jetzt nur die Meldung vorgelesen, dass die Validierung fehlschlägt.
Wir haben bei den barrierefreien Mitteilungen die Frontend Validierung herausgenommen
Puh, dass ist aus meiner Sicht nicht ideal, wenn dann alle, selbst simple Validierungen, über das Backend laufen. Darüber sollten wir reden
Abstimmung mit @lehju
Die Frontend Validierung soll auch beim Barrierefreiheits-Modus stattfinden. Das in dem Fall viele Meldungen vorgelesen werden könnten, ist wahrscheinlich ein Edge-Case und wir kennen die Nutzung der UI durch blinde Personen zu wenig. Deswegen bleibt das Verhalten in der UI, wie es aktuell ist und wir warten auf Feedback für weitere tiefergreifende Anpassungen, wenn wirklich notwendig
Bug bleibt wegen Inkonsistenz offen, aber nicht mehr im Sprint