您好!我正在使用 Discourse 表单模板来创建主题,并且验证对于所有字段类型都按预期工作,除了 upload 字段。
尽管为 upload 字段设置了 validations: required: true,但用户仍然可以在不附加任何文件的情况下提交表单。
我的理解是,当一个 upload 字段具有以下设置时:
validations:
required: true
……表单应该会阻止提交,除非上传了至少一个文件。表单的渲染是正确的。其他字段(input、textarea、tag-chooser、URL validation)按预期强制执行 required,但当 upload 字段为空时,它并不阻止提交。
YAML 是有效的,并且模板可以无错误地加载。文件上传本身在使用时工作正常,所以问题似乎是特定于对 upload 字段执行 required。我的模板中用于上传的 YAML 字符串如下所示:
- type: upload
id: patch-uploaded
attributes:
file_types: “.jpg, .png, .gif, .zip”
allow_multiple: true
label: “上传您的 .zip 文件”
validations:
required: true
感谢您的任何帮助!