Hallo! Ich verwende Discourse-Formularvorlagen für die Themen-Erstellung, und die Validierung funktioniert für alle Feldtypen außer upload korrekt.
Obwohl ich validations: required: true für ein upload-Feld festlege, können Benutzer das Formular immer noch absenden, ohne Dateien anzuhängen.
Mein Verständnis ist, dass das Formular die Übermittlung verhindern sollte, wenn ein upload-Feld Folgendes hat:
validations:
required: true
…es sei denn, es wird mindestens eine Datei hochgeladen. Das Formular wird korrekt gerendert. Andere Felder (input, textarea, tag-chooser, URL-Validierung) erzwingen required wie erwartet, aber das upload-Feld blockiert die Übermittlung nicht, wenn es leer ist.
YAML ist gültig und die Vorlage wird ohne Fehler geladen. Dateiuploads selbst funktionieren korrekt, wenn sie verwendet werden, daher scheint das Problem spezifisch für die Erzwingung von required beim upload-Feld zu sein. Meine YAML-Zeichenfolge für diesen Upload in meiner Vorlage sieht wie folgt aus:
- type: upload
id: patch-uploaded
attributes:
file_types: “.jpg, .png, .gif, .zip”
allow_multiple: true
label: “Laden Sie Ihre .zip hoch”
validations:
required: true
Vielen Dank im Voraus für jede Hilfe!